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 Core.Mes.Client.Comm.Control;
using Core.Mes.Client.Comm;
using Pur.Entity.configureEntity;
using Infragistics.Win.UltraWinGrid;
using System.Collections;
using Pur.Entity.pur_orderEntiy;
using Pur.configure;
using Pur.Pop_upWindow;
using Pur.require_plan;
using Core.Mes.Client.Comm.Tool;
using com.hnshituo.pur.vo;
using Bpm;
using com.hnshituo.bpm.req.vo;
using Core.Mes.Client.Comm.Server;
using Infragistics.Win.UltraWinEditors;
using Pur.PublicTools;
namespace Pur.order
{
public partial class FrmPurOrderApproval : FrmPmsBase
{
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;//用双缓冲绘制窗口的所有子控件
return cp;
}
}
//合同上传
String fileName = "";
String strIsbatch = "";
public FrmPurOrderApproval()
{
InitializeComponent();
this.IsLoadUserView = true;
}
private void FrmPurOrderApproval_Load(object sender, EventArgs e)
{
ultraTabControl2.Tabs["change"].Visible = false;
strIsbatch=this.CustomInfo == null ? "" : this.CustomInfo.ToString();//1:为批量审批
if (strIsbatch == "1")
{
ultraGrid1.DisplayLayout.Bands[0].Columns["CHK"].Hidden = true;
}
txt_createTimeStart.Value = DateTime.Now.AddMonths(-1);
txt_createTimeEnd.Value = DateTime.Now.AddDays(1);
txt_createTimeEnd.Enabled = true;
txt_createTimeStart.Enabled = true;
CK_Ctime.Checked = true;
txt_Status.SelectedIndex = 1;
//加载合同类别
//合同类别
DataTable dt1 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1200" }, this.ob);
comm.FilComboboxAdd(COP_OrderType, dt1, "baseCode", "baseName", "validflag NOT in ('0')", true, "全部", "");
COP_OrderType.SelectedIndex = 0;
DataTable dt2 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1235" }, this.ob);
comm.FilComboboxAdd(order_from_combo, dt2, "baseCode", "baseName", "validflag NOT in ('0')", true, "全部", "");
order_from_combo.SelectedIndex = 0;
GridHelper.SetExcludeColumnsActive(ultraGrid1.DisplayLayout.Bands[0], new string[] { "CHK" });
//加载待审批和已审批的合同头
GetPUR_ORDER_M();
ultraExpandableGroupBox1.Expanded = false;
}
#region toolbar菜单按钮事件
public override void ToolBar_Click(object sender, string ToolbarKey)
{
switch (ToolbarKey)
{
case "Query":
GetPUR_ORDER_M();
break;
case "Approval"://单个审批
AppPUR_ORDER_M();
//AppPUR_ORDER_M_all();
break;
case "ApprovalBatch":
AppPUR_ORDER_M_all();//批量审批
break;
case "Process":
Process();
break;
case "FinishedAuditOutline":
FinishedAuditOutline();
break;
case "getReportReview":
getReportHTReview();
break;
case "doExcel":
doExcel();
break;
}
}
///
/// 导出Excel
///
private void doExcel()
{
try
{
ArrayList alUltraGrid = new ArrayList();
alUltraGrid.Add(ultraGrid1);
alUltraGrid.Add(ultraGrid2);
alUltraGrid.Add(ultraGrid3);
ArrayList alSheeft = new ArrayList();
alSheeft.Add("合同主表");
alSheeft.Add("合同行表");
alSheeft.Add("合同条款");
if (ultraGrid1.Rows.Count > 0)
{
GridHelper.ulGridToExcel(alUltraGrid, alSheeft, "合同");//导出excel
}
//MessageUtil.ShowTips("导出成功");
}
catch (Exception e)
{
MessageUtil.ShowTips("导出失败" + e.Message);
}
finally
{
}
}
///
/// 转入线下审批
///
private void FinishedAuditOutline()
{
try
{
UltraGridRow uge = ultraGrid1.ActiveRow;
if (uge == null)
{
MessageUtil.ShowTips("请选择合同头!");
return;
}
String strOrderId = uge.Cells["OrderId"].Value.ToString().Trim();
OrderM Odm = new OrderM();
Odm.OrderId = strOrderId;
Odm.OperatorUserId = UserInfo.GetUserID();
OrderM Omg = this.execute("com.hnshituo.pur.order.service.OrderMService", "findById", new object[] { strOrderId });
if (Omg == null)
{
MessageUtil.ShowTips("未发现合同【" + strOrderId + "】的信息记录,可能已作废,或请刷新界面重新操作!");
return;
}
if (Omg.Validflag != "1")
{
MessageUtil.ShowWarning("合同【" + strOrderId + "】可能已作废,或请刷新界面重新操作!");
return;
}
if (Omg.Status != "2")
{
MessageUtil.ShowWarning("合同可能未提报审批或者已审批,无法完成一键审批!");
return;
}
if (MessageBox.Show("确认将合同[" + strOrderId + "]转入线下审批? 备注:请确保已在供应部完成审批。", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
{
return;
}
CoreResult rt = this.execute("com.hnshituo.pur.order.service.OrderMService", "finishedAuditOutline", new object[] { Odm });
if (rt.Resultcode != 0)
{
MessageUtil.ShowTips("操作失败:" + rt.Resultmsg);
return;
}
MessageUtil.ShowTips("操作成功!");
GetPUR_ORDER_M();
publicPms.doActiveSelRow(ultraGrid1, "orderId", strOrderId);
}
catch (Exception ex)
{
MessageUtil.ShowTips(ex.Message);
}
}
///
/// 审批
///
private void AppPUR_ORDER_M()// 单个审批
{
try
{
UltraGridRow uge = ultraGrid1.ActiveRow;
if (uge == null)
{
MessageUtil.ShowWarning("无审批信息,请检查后操作!");
return;
}
//if (MessageBox.Show("将审批合同ID为[" + uge.Cells["OrderId"].Value.ToString() + "]的合同?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
//{
// return;
//}
OrderM Omg = this.execute("com.hnshituo.pur.order.service.OrderMService", "findById", new object[] { uge.Cells["OrderId"].Value.ToString() });
if (!Omg.Status.Equals("2"))
{
MessageUtil.ShowWarning("合同" + uge.Cells["OrderId"].Value.ToString() + "尚未送审或已审批,请刷新后再操作!");
return;
}
frmExamineShow Fex = new frmExamineShow();
Fex.ShowDialog();
if (Fex.Status == null)
{
return;
}
string OrderId = uge.Cells["OrderId"].Value.ToString();
//OrderM Odm = new OrderM();
//Odm.OrderId = uge.Cells["OrderId"].Value.ToString();
//Odm.Status = "2";
//this.execute("com.hnshituo.pur.order.service.OrderMService", "doUpdate", new object[] { Odm });
//CoreResult rt = this.execute("com.hnshituo.pur.order.service.OrderMService", "doUpdate", new object[] { Odm });
ReqCompleteTask req = new ReqCompleteTask();
req.OperatorUserId = UserInfo.GetUserID();
req.TaskId = uge.Cells["BpmTaskId"].Value.ToString();
if (Fex.Status.Equals("2"))
{
req.AuditData = true;
req.AuditMessage = Fex.ExamineMessage;
CoreResult crt = this.execute("com.hnshituo.pur.order.service.OrderMService", "bpmAudit1", new object[] { req,Omg });
if (crt.Resultcode == -1)
{
MessageUtil.ShowTips("合同" + OrderId + "审批失败!" + crt.Resultmsg);
return;
}
MessageUtil.ShowTips("操作成功");
GetPUR_ORDER_M();
}
else if (Fex.Status.Equals("1"))
{
req.AuditData = false;
req.AuditMessage = Fex.ExamineMessage;
CoreResult crt = this.execute("com.hnshituo.pur.order.service.OrderMService", "bpmAudit1", new object[] { req, Omg });
if (crt.Resultcode == -1)
{
MessageUtil.ShowTips("合同" + OrderId + "审批失败!" + crt.Resultmsg);
return;
}
OrderM ReqM = new OrderM();
ReqM.OrderId = OrderId;
ReqM.Status = "5";
CoreResult rt = this.execute("com.hnshituo.pur.order.service.OrderMService", "doUpdate", new object[] { ReqM });
if (rt.Resultcode != 0)
{
MessageUtil.ShowTips("需求计划单" + uge.Cells["MrId"].Value.ToString() + "审批失败!" + crt.Resultmsg);
return;
}
MessageUtil.ShowTips("操作成功");
GetPUR_ORDER_M();
}
}
catch (Exception ex)
{
MessageUtil.ShowTips(ex.Message);
}
}
///
/// 批量审批
///
private void AppPUR_ORDER_M_all()
{
try
{
ultraGrid1.UpdateData();
ArrayList list = new ArrayList();
foreach (UltraGridRow row in ultraGrid1.Rows)
{
if (Convert.ToBoolean(row.GetCellValue("CHK")) == true)
{
OrderM pm = new OrderM();
pm.OrderId = row.GetCellValue("orderId").ToString().Trim();
pm.DeleteUserid = row.GetCellValue("BpmTaskId").ToString().Trim();
pm.DeleteName = UserInfo.GetUserID();//审批人ID
list.Add(pm);
}
}
if (list.Count <= 0)
{
MessageUtil.ShowTips("请选择需要审批的合同!");
return;
}
//UltraGridRow uge = ultraGrid1.ActiveRow;
// ArrayList al = setUserPlan();
frmExamineShowNew frm = new frmExamineShowNew(list, this.ob, "order");
frm.ShowDialog();
if (frm.tips == "1")
{
GetPUR_ORDER_M();
}
}
catch (Exception ex)
{
MessageUtil.ShowTips(ex.Message);
}
}
///
/// 查询
///
private void GetPUR_ORDER_M()// 查询
{
dataSet1.Clear();
dataSet2.Clear();
message.Clear();
OrderM Odm = new OrderM();
Odm.OrderType = COP_OrderType.Value == null ? null : COP_OrderType.Value.ToString().Trim();
Odm.OrderId = COP_OrderId.Text.ToString().Trim();
Odm.SuppName = COP_SuppName.Text.ToString().Trim();
if (CK_Ctime.Checked)
{
if (txt_createTimeStart.Text != "")
{
Odm.CreateTime = Convert.ToDateTime(txt_createTimeStart.Value);
}
if (txt_createTimeEnd.Text != "")
{
Odm.UpdateTime = Convert.ToDateTime(txt_createTimeEnd.Value);
}
}
if (txt_Status.SelectedIndex == -1)
{
MessageUtil.ShowTips("请选择数据范围进行查询");
}
Odm.Validflag = "1";
Odm.BpmUserId = UserInfo.GetUserID();
Odm.ValidDataPurviewIds = this.ValidDataPurviewIds;
Odm.BuyerDeptDesc = Buyer_Dept_Txt.Value.ToString2();
Odm.OrderForm = order_from_combo.Text.ToString2().Equals("全部") ? "" : order_from_combo.Text.ToString2();
DataTable dt = new DataTable();
if (txt_Status.SelectedIndex == -1)
{
return;
}
if (txt_Status.Value.ToString().Trim() == "wait")
{
dt = this.execute("com.hnshituo.pur.order.service.OrderMService", "find_audit_OrderM", new object[] { Odm });
}
else if (txt_Status.Value.ToString().Trim() == "did")
{
dt = this.execute("com.hnshituo.pur.order.service.OrderMService", "find_audited_OrderM", new object[] { Odm });
}
else
{
dt = this.execute("com.hnshituo.pur.order.service.OrderMService", "find_OrderM", new object[] { Odm });
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);
GridHelper.RefreshAndAutoSizeExceptColumns(ultraGrid1, new string[] { "ItemNames", "PriceWithTaxs", "qtys" });
}
///
/// 合同评审单
///
private void getReportHTReview()//打印合同审批表
{
try
{
this.Cursor = Cursors.WaitCursor;
UltraGridRow ugr = ultraGrid1.ActiveRow;
if (ugr == null)
{
MessageUtil.ShowWarning("请选择您要查看合同审批表的合同!");
return;
}
//string ordLnPk = ugr.Cells["ORD_LN_PK"].Value.ToString();
//string saleOrg = ugr.Cells["SALE_ORG"].Value.ToString();
//string ordPk = ugr.Cells["ORD_PK"].Value.ToString();
string orderNo = ugr.Cells["OrderId"].Value.ToString();
string strurl = "";
DataTable dt = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1223" }, this.ob);
DataRow[] drArr = dt.Select("validflag='1'");
if (drArr.Length != 1)
{
MessageUtil.ShowTips("基础数据维护错误:报表系统需维护有效的Ip且只能维护一个有效ip!");
return;
}
String TipsEnv = drArr[0]["baseName"].ToString();
String strUrlPort = "http://172.54.10.42:8080";//报表系统IP
String[] str = strUrlPort.Split(':');
String strUrl = str[0] + ":" + str[1];
if (ob.MainUrl.StartsWith(strUrl))
{
//测试环境
if (TipsEnv == "2")
{
strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurOrderReviewDev.cpt&op=view" + "&cmbOrder=" + orderNo;
}
else
{
strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurOrderReview.cpt&op=view" + "&cmbOrder=" + orderNo;
}
}
else
{
//测试环境
if (TipsEnv == "2")
{
strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurOrderReviewDev.cpt&op=view" + "&cmbOrder=" + orderNo;
}
else
{
strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurOrderReview.cpt&op=view" + "&cmbOrder=" + orderNo;
}
}
//if (ob.MainUrl.StartsWith("http://127.0.0.1"))
//{
// strurl = "http://localhost:8075/webroot/decision/view/report?viewlet=RepPurOrderReviewDev.cpt&__bypagesize__=false" + "&cmbOrder=" + orderNo;
//}
//else
//{
// strurl = "http://localhost:8075/webroot/decision/view/report?viewlet=RepPurOrderReview.cpt&__bypagesize__=false" + "&cmbOrder=" + orderNo;
//}
FrmRepExcel fBug = new FrmRepExcel(ob, strurl);
fBug.AutoSize = true;
fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
fBug.WindowState = FormWindowState.Maximized;
fBug.Text = "TPCO合同审批表查询";
fBug.Show();
}
finally
{
this.Cursor = Cursors.Default;
}
}
///
/// 查看流程详情
///
private void Process()//查看流程详情
{
UltraGridRow uge = ultraGrid1.ActiveRow;
if (uge == null)
{
MessageUtil.ShowWarning("请选择合同!");
return;
}
String strOrderId = uge.Cells["OrderId"].Value.ToString().Trim();
if (String.IsNullOrEmpty(strOrderId))
{
MessageUtil.ShowWarning("数据异常,合同头信息合同号为空!");
return;
}
ProcInstDetail detail = new ProcInstDetail(BpmFlowConstants.PROCDEF_PUR_ORDER_AUDIT, strOrderId);
detail.ShowDialog();
}
#endregion
#region 界面事件
///
/// grid1激活事件
///
///
///
private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)// grid1激活事件
{
UltraGridRow uge= ultraGrid1.ActiveRow;
getOrderDetail(uge);
}
///
/// 加载合同明细信息
///
///
private void getOrderDetail(UltraGridRow uge)// 加载合同明细信息
{
dataTable2.Clear();
dataTable3.Clear();
dataTable5.Clear();
change.Clear();
jy_procRecord.Clear();
message.Clear();
ConfigureClassCommon.clearOldData(panel1);
OrderC odC = new OrderC();
String strOrderId = uge.Cells["OrderId"].Value.ToString().Trim();
String strModeId = uge.Cells["ModeId"].Value.ToString().Trim();
String strTaskRecordId = uge.Cells["TaskRecordId"].Value.ToString().Trim();
if (!String.IsNullOrEmpty(strOrderId))
{
odC.OrderId = strOrderId;
odC.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.order.service.OrderCService", "doQueryOrderC", new object[] { odC, 0, 0 });
GridHelper.CopyDataToDatatable(dt, dataTable2, true);
GridHelper.RefreshAndAutoSize(ultraGrid2);
}
if (!String.IsNullOrEmpty(strOrderId))
{
OrderCClause clause = new OrderCClause();
clause.OrderId = strOrderId;
DataTable dt = this.execute("com.hnshituo.pur.order.service.OrderCClauseService", "find_Clause", new object[] { clause });
GridHelper.CopyDataToDatatable(dt, dataTable3, true);
GridHelper.RefreshAndAutoSize(ultraGrid3);
}
//加载采购纪要数据
if (!String.IsNullOrEmpty(strTaskRecordId))
{
PurTaskRecordEntity taskRecord = this.execute("com.hnshituo.pur.purplan.service.TaskRecordService", "findById", new object[] { strTaskRecordId });
if (taskRecord!=null)
{
jy_buyerUsername.Text = taskRecord.BuyerUsername;
jy_mngOrgName.Text = taskRecord.MngOrgName;
jy_negDate.Value = taskRecord.NegDate;
if (taskRecord.ProcRecord != null)
{
jy_procRecord.Text = taskRecord.ProcRecord.Replace("\n", "\r\n");
}
jy_taskId.Text = taskRecord.TaskId;
jy_taskName.Text = taskRecord.TaskName;
jy_type.Value = taskRecord.Type;
DataTable dt6 = this.execute("com.hnshituo.pur.purplan.service.TaskEvaService", "doQueryEva", new object[] { taskRecord.TaskId });
GridHelper.CopyDataToDatatable(dt6, dataTable5, true);
GridHelper.RefreshAndAutoSize(ultraGrid6);
}
}
getOrderAppend(strOrderId, "");
//加载评审意见
getOrderReview(strOrderId);
//加载变更记录
getOrderChangeRecord(strOrderId);
}
///
/// 加载合同变更记录
///
///
private void getOrderChangeRecord(string strOrderId)
{
change.Clear();
OrderChangeM change1 = new OrderChangeM();
if (strOrderId.EndsWith("BG"))
{
change1.OrderIdB = strOrderId;
}
else
{
change1.OrderId = strOrderId;
}
change1.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.order.service.OrderChangeMService", "find", new object[] { change1, 0, 0 });
if (dt != null && dt.Rows.Count > 0)
{
ultraTabControl2.Tabs["change"].Visible = true;
GridHelper.CopyDataToDatatable(dt, dataTable6, true);
GridHelper.RefreshAndAutoSize(ultraGrid8);
}
else
{
ultraTabControl2.Tabs["change"].Visible = false;
}
}
///
/// 查询条件--创建时间控制
///
///
///
private void CK_Ctime_CheckedChanged(object sender, EventArgs e)// 查询条件--创建时间控制
{
txt_createTimeStart.Enabled = CK_Ctime.Checked;
txt_createTimeEnd.Enabled = CK_Ctime.Checked;
}
#endregion
///
/// 获取合同评审意见
///
///
private void getOrderReview(string strOrderId)
{
DataTable dt11 = this.execute("com.hnshituo.pur.order.service.OrderMService", "getReviewMsg", new object[] { strOrderId });
GridHelper.CopyDataToDatatable(dt11, dataTable7, true);
GridHelper.RefreshAndAutoSize(ultraGrid5);
}
private void txt_Status_ValueChanged(object sender, EventArgs e)
{
GetPUR_ORDER_M();
if (strIsbatch != "1")
{
foreach (UltraGridRow row in ultraGrid1.Rows)
{
row.Cells["CHK"].Value = false;
}
if (txt_Status.SelectedIndex == 1)//待审批
{
ultraGrid1.DisplayLayout.Bands[0].Columns["CHK"].Hidden = false;
}
else
{
ultraGrid1.DisplayLayout.Bands[0].Columns["CHK"].Hidden = true;
}
}
}
#region 文件上传
private void craftImg_EditorButtonClick(object sender, EditorButtonEventArgs e)
{
try
{
UltraGridRow row = ultraGrid4.ActiveRow;
string filePathOld = row.GetValue("certPathOld");
if (e.Button.Key.ToLower().Equals("select"))
{
FrmPopFileShow down = new FrmPopFileShow(this.ob, filePathOld);
down.DeleteButton.Visible = false;
down.ShowDialog();
}
}
catch (Exception ex)
{
MessageUtil.ShowTips("操作失败:" + ex);
}
}
private void txt_certPath_EditorButtonClick(object sender, EditorButtonEventArgs e)
{
try
{
if (e.Button.Key.ToLower().Equals("insert"))
{
OpenFileDialog file = new OpenFileDialog();
file.Multiselect = false;
DialogResult drStat;
drStat = file.ShowDialog();
if (drStat == DialogResult.OK)
{
fileName = file.FileName;
String filePathlocal = System.IO.Path.GetFullPath(fileName);
string filena = System.IO.Path.GetFileName(fileName);
txt_certPath.Text = filena;
txt_certpath_local.Text = filePathlocal;
}
}
}
catch (Exception ex)
{
MessageUtil.ShowTips("操作失败:" + ex);
}
}
//上传按钮
private void btn_submitAppend_Click(object sender, EventArgs e)
{
if (ultraGrid1.ActiveRow == null)
{
MessageUtil.ShowTips("未选择合同头");
return;
}
String filena = txt_certPath.Text.ToString().Trim();
if (String.IsNullOrEmpty(filena) || String.IsNullOrEmpty(fileName))
{
MessageUtil.ShowTips("请选择待上传文件");
return;
}
string strOrderId = ultraGrid1.ActiveRow.GetValue("orderId");
OrderAppend sat = new OrderAppend();
sat.OrderId = strOrderId;
String filePathNew = "Pms/CERT/" + strOrderId + "/";
sat.CertPath = filena;
sat.CertPathOld = filePathNew + filena;
sat.CreateUserid = UserInfo.GetUserID();
sat.CreateName = UserInfo.GetUserName();
sat.CreateTime = DateTime.Now;
sat.Validflag = "1";
sat.CertDesc = txt_CERTDESC.Text.Trim();
if (GetCraftFileCraftNoCnt(filena, strOrderId) > 0)
{
MessageUtil.ShowTips("合同已存在该附件文件:" + filena);
return;
}
List list = new List();
FileBean bean = new FileBean();
bean = new FileBean();
bean.setFileName(filena);
bean.setPathName(filePathNew);
bean.setFile(FileHelper.FileToArray(fileName));
list.Add(bean);
bool isSuccess = Core.Mes.Client.Comm.Server.FileHelper.Upload(list);
if (isSuccess)
{
//开始写数据库
CoreResult crt = this.execute("com.hnshituo.pur.order.service.OrderAppendService", "insert_append", new object[] { sat });
if (crt.Resultcode != 0)
{
MessageUtil.ShowTips("上传失败:" + crt.Resultmsg);
}
else
{
MessageUtil.ShowTips("上传成功");
ClearTab5();
}
}
else
{
MessageBox.Show("上传失败");
}
//刷新界面并激活当前行
Relocate(sat);
}
private void Relocate(OrderAppend sat)
{
getOrderAppend(sat.OrderId, sat.CertPath);
}
///
/// 判断是否之前已提交相同的文件
///
///
///
private int GetCraftFileCraftNoCnt(string CERT_PATH, string orderId)
{
OrderAppend sat = new OrderAppend();
sat.CertPath = CERT_PATH;
sat.OrderId = orderId;
sat.Validflag = "1";
int dt = this.execute("com.hnshituo.pur.order.service.OrderAppendService", "count", new object[] { sat });
return dt;
}
///
/// 清空文件上传编辑区
///
private void ClearTab5()
{
txt_certPath.Clear();
txt_certpath_local.Clear();
txt_CERTDESC.Clear();
fileName = "";
}
///
/// 加载合同附件
///
///
///
private void getOrderAppend(string strOrderId, string p)
{
dataTable4.Clear();
OrderAppend append = new OrderAppend();
append.OrderId = strOrderId;
append.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.order.service.OrderAppendService", "find", new object[] { append, 0, 0 });
GridHelper.CopyDataToDatatable(dt, dataTable4, true);
GridHelper.RefreshAndAutoSize(ultraGrid4);
if (!String.IsNullOrEmpty(p))
{
ConfigureClassCommon.doActiveSelRow(ultraGrid4, "CERTPATH", p);
}
}
//删除
private void tbn_delete_Click(object sender, EventArgs e)
{
UltraGridRow uge = ultraGrid1.ActiveRow;
if (uge == null)
{
MessageUtil.ShowTips("请选择合同头!");
return;
}
String strOrderId = uge.Cells["OrderId"].Value.ToString().Trim();
if (String.IsNullOrEmpty(strOrderId))
{
MessageUtil.ShowTips("该合同头编号为空!");
return;
}
UltraGridRow rowAppend = ultraGrid4.ActiveRow;
if (rowAppend == null)
{
MessageUtil.ShowTips("请选择需删除的附件!");
return;
}
String strAppendID = rowAppend.Cells["ID"].Value.ToString().Trim();
String strcertPath = rowAppend.Cells["CERTPATH"].Value.ToString().Trim();
String strCertPathOld = rowAppend.Cells["CERTPATHOLD"].Value.ToString().Trim();
if (String.IsNullOrEmpty(strAppendID))
{
MessageUtil.ShowTips("该合同附件编号为空!");
return;
}
if (String.IsNullOrEmpty(strCertPathOld))
{
MessageUtil.ShowTips("未获取到合同附件地址信息!");
return;
}
//验证合同头是否可以增删改
if (testOrderAppendStatus(strAppendID, 1) == false)
{
return;
}
OrderAppend append = new OrderAppend();
append.Id = strAppendID;
append.Validflag = "0";
append.DeleteName = UserInfo.GetUserName();
append.DeleteTime = DateTime.Now;
append.DeleteUserid = UserInfo.GetUserID();
if (MessageUtil.ShowYesNoAndQuestion("确定删除合同附件:" + strcertPath + "?") != DialogResult.Yes)
{
return;
}
CoreResult crt = this.execute("com.hnshituo.pur.order.service.OrderAppendService", "delete_append", new object[] { append });
if (crt.Resultcode != 0)
{
MessageUtil.ShowTips("删除失败!" + crt.Resultmsg);
return;
}
else
{
bool isSuccess = Core.Mes.Client.Comm.Server.FileHelper.Delete(strCertPathOld);
if (isSuccess)
{
MessageUtil.ShowTips("删除成功");
}
else
{
MessageBox.Show("删除成功");
}
}
getOrderAppend(strOrderId, "");
}
///
/// 验证合同条款输入数据的有效性
///
///
private bool testOrderAppendStatus(String strId, int p)// 验证合同附件
{
OrderAppend append = this.execute("com.hnshituo.pur.order.service.OrderAppendService", "findById", new object[] { strId });
if (append == null)
{
MessageUtil.ShowTips("未发现合同附件:" + strId + "信息记录,可能已作废");
return false;
}
if (append.Validflag != "1")
{
MessageUtil.ShowTips("合同附件:" + strId + "信息记录可能已作废");
return false;
}
if (append.CreateUserid != UserInfo.GetUserID())
{
MessageUtil.ShowTips("非本人上传合同附件无权限进行增删改");
return false;
}
if (p == 1)
{
}
else
{
MessageUtil.ShowTips("未知参数:" + p + "");
return false;
}
return true;
}
#endregion
private void ultraGrid1_InitializeRow(object sender, InitializeRowEventArgs e)
{
if (e.Row.Cells["status"].Value.ToString().Equals("审批不通过") || e.Row.Cells["status"].Value.ToString().Equals("草稿"))
{
e.Row.Appearance.ForeColor = Color.Red;
}
else if (e.Row.Cells["status"].Value.ToString().StartsWith("合同变更中"))
{
e.Row.Appearance.ForeColor = Color.Gray;
}
else
{
e.Row.Appearance.ForeColor = Color.Black;
}
if (e.Row.Cells["orderId"].Value.ToString().EndsWith("BG"))
{
e.Row.Appearance.ForeColor = Color.Blue;
}
}
private void ultraGrid8_AfterRowActivate(object sender, EventArgs e)
{
dataTable8.Clear();
String strChangeId = ultraGrid8.ActiveRow.GetCellValue("changeId").ToString();
txt_changeDesc.Text = ultraGrid8.ActiveRow.GetCellValue("CHANGERECORD").ToString().Replace("\n", "\r\n");
if (String.IsNullOrEmpty(strChangeId))
{
return;
}
OrderChangeD change = new OrderChangeD();
change.ChangeId = strChangeId;
change.Validflag = "1";
DataTable dt = this.execute("com.hnshituo.pur.order.service.OrderChangeDService", "find", new object[] { change, 0, 0 });
GridHelper.CopyDataToDatatable(dt, dataTable8, true);
GridHelper.RefreshAndAutoSize(ultraGrid7);
}
}
}