812 lines
30 KiB
C#
812 lines
30 KiB
C#
|
|
using BLL;
|
|||
|
|
using System;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using System.Data;
|
|||
|
|
using System.Data.SqlClient;
|
|||
|
|
using System.Linq;
|
|||
|
|
using System.Web.UI.WebControls;
|
|||
|
|
|
|||
|
|
namespace FineUIPro.Web.PHTGL.ContractCompile
|
|||
|
|
{
|
|||
|
|
public partial class ContractReviewDetail : PageBase
|
|||
|
|
{
|
|||
|
|
#region 定义属性
|
|||
|
|
/// <summary>
|
|||
|
|
/// 合同ID
|
|||
|
|
/// </summary>
|
|||
|
|
public string contractId
|
|||
|
|
{
|
|||
|
|
get
|
|||
|
|
{
|
|||
|
|
return (string)ViewState["contractId"];
|
|||
|
|
}
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
ViewState["contractId"] = value;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public string ContractReviewId
|
|||
|
|
{
|
|||
|
|
get
|
|||
|
|
{
|
|||
|
|
return (string)ViewState["ContractReviewId"];
|
|||
|
|
}
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
ViewState["ContractReviewId"] = value;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
/// <summary>
|
|||
|
|
/// 最末的审批节点
|
|||
|
|
/// </summary>
|
|||
|
|
public int EndApproveType
|
|||
|
|
{
|
|||
|
|
get
|
|||
|
|
{
|
|||
|
|
return (int)ViewState["EndApproveType"];
|
|||
|
|
}
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
ViewState["EndApproveType"] = value;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<ApproveManModel> ApproveManModels
|
|||
|
|
{
|
|||
|
|
get
|
|||
|
|
{
|
|||
|
|
return (List<ApproveManModel>)Session["ApproveManModels"];
|
|||
|
|
}
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
Session["ApproveManModels"] = value;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public Model.PHTGL_Approve pHTGL_Approve
|
|||
|
|
{
|
|||
|
|
get
|
|||
|
|
{
|
|||
|
|
return (Model.PHTGL_Approve)Session["pHTGL_Approve"];
|
|||
|
|
}
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
Session["pHTGL_Approve"] = value;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
|
|||
|
|
protected void Page_Load(object sender, EventArgs e)
|
|||
|
|
{
|
|||
|
|
if (!IsPostBack)
|
|||
|
|
{
|
|||
|
|
this.btnClose.OnClientClick = ActiveWindow.GetHideRefreshReference();
|
|||
|
|
|
|||
|
|
ContractReviewId = Request.Params["ContractReviewId"];
|
|||
|
|
Model.PHTGL_ContractReview _ContractReview = PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
contractId = _ContractReview.ContractId;
|
|||
|
|
//获取合同基本信息
|
|||
|
|
Model.PHTGL_Contract _Contract = BLL.ContractService.GetContractById(contractId);
|
|||
|
|
//获取审批人字典
|
|||
|
|
ApproveManModels = PHTGL_ContractReviewService.GetApproveManModels(ContractReviewId);
|
|||
|
|
|
|||
|
|
pHTGL_Approve = BLL.PHTGL_ApproveService.GetPHTGL_ApproveByUserId(ContractReviewId, this.CurrUser.PersonId);
|
|||
|
|
|
|||
|
|
GetEndApproveType();
|
|||
|
|
Tab1.Hidden = true;
|
|||
|
|
Tab3.Hidden = true;
|
|||
|
|
if (PHTGL_ApproveService.IsApproveMan(ContractReviewId, this.CurrUser.PersonId))
|
|||
|
|
{
|
|||
|
|
BindGrid();
|
|||
|
|
//GetTabPower();
|
|||
|
|
}
|
|||
|
|
else if (this.CurrUser.PersonId == Const.sysglyId || this.CurrUser.PersonId == Const.hfnbdId)
|
|||
|
|
{
|
|||
|
|
BindGrid();
|
|||
|
|
}
|
|||
|
|
else if (_Contract.CreatUser == this.CurrUser.PersonId)
|
|||
|
|
{
|
|||
|
|
BindGrid();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
#region 数据绑定
|
|||
|
|
private void BindGrid()
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_Contract _Contract = BLL.ContractService.GetContractById(contractId);
|
|||
|
|
|
|||
|
|
Tab2_CBContractType.DataTextField = "Text";
|
|||
|
|
Tab2_CBContractType.DataValueField = "Value";
|
|||
|
|
Tab2_CBContractType.DataSource = BLL.DropListService.GetContractType();
|
|||
|
|
Tab2_CBContractType.DataBind();
|
|||
|
|
|
|||
|
|
if (_Contract != null)
|
|||
|
|
{
|
|||
|
|
this.Tab2_txtProjectShortName.Text = _Contract.ProjectShortName;
|
|||
|
|
this.Tab2_txtContractName.Text = _Contract.ContractName;
|
|||
|
|
this.Tab2_txtContractNum.Text = _Contract.ContractNum;
|
|||
|
|
this.Tab2_txtParties.Text = _Contract.Parties;
|
|||
|
|
this.SituationRemark.Text = _Contract.SituationRemark;
|
|||
|
|
//if (_Contract.IsUseStandardtxt==1) //线上
|
|||
|
|
//{
|
|||
|
|
// this.NoUseStandardtxtRemark.Hidden = true;
|
|||
|
|
|
|||
|
|
//}
|
|||
|
|
//else //线下
|
|||
|
|
//{
|
|||
|
|
// this.NoUseStandardtxtRemark.Hidden = false;
|
|||
|
|
|
|||
|
|
// this.NoUseStandardtxtRemark.Text = _Contract.NoUseStandardtxtRemark;
|
|||
|
|
|
|||
|
|
//}
|
|||
|
|
|
|||
|
|
this.Tab2_txtContractAmount.Text = _Contract.ContractAmount.HasValue ? _Contract.ContractAmount.ToString() : "";
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.DepartId))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
this.Tab2_txtDepartId.Text = DepartService.getDepartNameById(_Contract.DepartId);
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.Agent))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
this.Tab2_txtAgent.Text = Person_PersonsService.GetPersonsNameById(_Contract.Agent);
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.ContractType))
|
|||
|
|
{
|
|||
|
|
Tab2_CBContractType.SelectedValueArray = _Contract.ContractType.Split();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var Model_Contractview = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
int[] ListConRev = { Const.ContractReviewing, Const.ContractReview_Complete, Const.ContractReview_Refuse };
|
|||
|
|
if (Array.IndexOf(ListConRev, Model_Contractview.State) != -1)
|
|||
|
|
{
|
|||
|
|
btnAttach.Hidden = false;
|
|||
|
|
txtIdea.Hidden = false;
|
|||
|
|
txtIdea.Text = Model_Contractview.Idea;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
pHTGL_Approve = BLL.PHTGL_ApproveService.GetPHTGL_ApproveByUserId(ContractReviewId, this.CurrUser.PersonId);
|
|||
|
|
if (pHTGL_Approve != null)
|
|||
|
|
{
|
|||
|
|
btnAgree.Enabled = true;
|
|||
|
|
btnDisgree.Enabled = true;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
btnAgree.Enabled = false;
|
|||
|
|
btnDisgree.Enabled = false;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
DataTable tb = BLL.PHTGL_ApproveService.GetAllApproveData(ContractReviewId);
|
|||
|
|
Grid1.DataSource = tb;
|
|||
|
|
Grid1.DataBind();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private void GetTabPower()
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_ContractReview _ContractReview = PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
var ApproveManModels__Countersigner = PHTGL_ContractReviewService.GetApproveManModels__Countersigner(ContractReviewId);
|
|||
|
|
var allApproveMan = ApproveManModels__Countersigner.Concat(ApproveManModels).ToList();
|
|||
|
|
var ApproveManList = PHTGL_ApproveService.GetListPHTGL_ApproveByUserId(ContractReviewId, this.CurrUser.PersonId);
|
|||
|
|
int Number = 0;
|
|||
|
|
if (ApproveManList.Count > 0)
|
|||
|
|
{
|
|||
|
|
for (int i = 0; i < ApproveManList.Count; i++)
|
|||
|
|
{
|
|||
|
|
var number = allApproveMan.Find(x => x.Rolename == ApproveManList[i].ApproveType).Number;
|
|||
|
|
if (number > Number)
|
|||
|
|
{
|
|||
|
|
Number = number;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
if (Convert.ToInt32(Number) > 6)
|
|||
|
|
{
|
|||
|
|
Tab1.Hidden = false;
|
|||
|
|
BindCountersignFrom();
|
|||
|
|
if (_ContractReview.State == Const.ContractReview_Complete)
|
|||
|
|
{
|
|||
|
|
Tab3.Hidden = false;
|
|||
|
|
BindApproveForm();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
#region 附件
|
|||
|
|
protected void btnLooK_Click(object sender, EventArgs e)
|
|||
|
|
{
|
|||
|
|
var model = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
var Con = BLL.ContractService.GetContractById(model.ContractId);
|
|||
|
|
if (Con.IsUseStandardtxt != 1)
|
|||
|
|
{
|
|||
|
|
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/ContractAttachUrl&menuId={1}&type=-1", model.ContractId, BLL.Const.ContractFormation)));
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
//ContractReview contractReview = new ContractReview();
|
|||
|
|
//contractReview.printContractAgreement(model.ContractId);
|
|||
|
|
BLL.PHTGL_ContractReviewService.printContractAgreement(model.ContractId);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
protected void btnAttach_Click(object sender, EventArgs e)
|
|||
|
|
{
|
|||
|
|
var model = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/ContractAttachUrl&menuId={1}&type=-1", model.ContractId + "-Idea", BLL.Const.ContractFormation)));
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
/// <summary>
|
|||
|
|
/// 情况说明附件
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="sender"></param>
|
|||
|
|
/// <param name="e"></param>
|
|||
|
|
protected void btnAttachUrl_Remark_Click(object sender, EventArgs e)
|
|||
|
|
{
|
|||
|
|
var model = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
|
|||
|
|
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/ContractAttachUrl/Remark&menuId={1}&type=-1", model.ContractId + "-Remark", BLL.Const.ContractFormation)));
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
#region 绑定会签评审单
|
|||
|
|
void BindCountersignFrom()
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_Contract _Contract = BLL.ContractService.GetContractById(contractId);
|
|||
|
|
|
|||
|
|
CBContractType.DataTextField = "Text";
|
|||
|
|
CBContractType.DataValueField = "Value";
|
|||
|
|
CBContractType.DataSource = BLL.DropListService.GetContractType();
|
|||
|
|
CBContractType.DataBind();
|
|||
|
|
|
|||
|
|
|
|||
|
|
if (_Contract != null)
|
|||
|
|
{
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.ProjectId))
|
|||
|
|
{
|
|||
|
|
this.txtProjectid.Text = ProjectService.GetProjectCodeByProjectId(_Contract.ProjectId);
|
|||
|
|
}
|
|||
|
|
this.txtContractName.Text = _Contract.ContractName;
|
|||
|
|
this.txtContractNum.Text = _Contract.ContractNum;
|
|||
|
|
this.txtParties.Text = _Contract.Parties;
|
|||
|
|
|
|||
|
|
this.txtContractAmount.Text = _Contract.ContractAmount.HasValue ? _Contract.ContractAmount.ToString() : "";
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.DepartId))
|
|||
|
|
{
|
|||
|
|
this.txtDepartId.Text = DepartService.getDepartNameById(_Contract.DepartId);
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.Agent))
|
|||
|
|
{
|
|||
|
|
this.txtAgent.Text = Person_PersonsService.GetPersonsNameById(_Contract.Agent);
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.ContractType))
|
|||
|
|
{
|
|||
|
|
CBContractType.SelectedValueArray = _Contract.ContractType.Split();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
string strSql = @" select a.ApproveId ,a.ApproveMan,a.ApproveType,a.ApproveDate ,a.ApproveIdea,a.ApproveForm
|
|||
|
|
from PHTGL_Approve a "
|
|||
|
|
+ @" where not exists (select 1 from PHTGL_Approve b where a.ApproveType=b.ApproveType and a.ContractId=b.ContractId and a.ApproveDate<b.ApproveDate ) and ContractId=@ContractId";
|
|||
|
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
|
listStr.Add(new SqlParameter("@ContractId", ContractReviewId));
|
|||
|
|
|
|||
|
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
var ApproveManModels__Countersigner = PHTGL_ContractReviewService.GetApproveManModels__Countersigner(ContractReviewId);
|
|||
|
|
var allApproveMan = ApproveManModels__Countersigner.Concat(ApproveManModels).ToList();
|
|||
|
|
|
|||
|
|
foreach (DataRow dr in tb.Rows)
|
|||
|
|
{
|
|||
|
|
string ApproveMan = dr["ApproveMan"].ToString();
|
|||
|
|
var model = allApproveMan.Find(e => e.Rolename == dr["ApproveType"].ToString());
|
|||
|
|
string ApproveType = "";
|
|||
|
|
string ApproveDate = "";
|
|||
|
|
if (model != null)
|
|||
|
|
{
|
|||
|
|
ApproveType = model.Number.ToString();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
string ApproveIdea = dr["ApproveIdea"].ToString();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
ApproveDate = string.Format("{0:D}", DateTime.Parse(dr["ApproveDate"].ToString()));
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception)
|
|||
|
|
{
|
|||
|
|
ApproveDate = "";
|
|||
|
|
}
|
|||
|
|
switch (ApproveType)
|
|||
|
|
{
|
|||
|
|
case "1":
|
|||
|
|
txtnode1.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "2":
|
|||
|
|
txtnode2.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "3":
|
|||
|
|
txtnode3.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "4":
|
|||
|
|
txtnode4.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "5":
|
|||
|
|
txtnode5.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "6":
|
|||
|
|
txtnode6.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "7":
|
|||
|
|
txtnode7.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "8":
|
|||
|
|
txtnode8.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "9":
|
|||
|
|
txtnode9.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "10":
|
|||
|
|
txtnode10.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
#region 绑定施工合同签订审批表
|
|||
|
|
void BindApproveForm()
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_Contract _Contract = BLL.ContractService.GetContractById(contractId);
|
|||
|
|
|
|||
|
|
Tab3_CBContractType.DataTextField = "Text";
|
|||
|
|
Tab3_CBContractType.DataValueField = "Value";
|
|||
|
|
Tab3_CBContractType.DataSource = BLL.DropListService.GetContractType();
|
|||
|
|
Tab3_CBContractType.DataBind();
|
|||
|
|
|
|||
|
|
|
|||
|
|
if (_Contract != null)
|
|||
|
|
{
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.ProjectId))
|
|||
|
|
{
|
|||
|
|
this.Tab3_txtProjectid.Text = ProjectService.GetProjectCodeByProjectId(_Contract.ProjectId);
|
|||
|
|
}
|
|||
|
|
this.Tab3_txtContractName.Text = _Contract.ContractName;
|
|||
|
|
this.Tab3_txtContractNum.Text = _Contract.ContractNum;
|
|||
|
|
this.Tab3_txtParties.Text = _Contract.Parties;
|
|||
|
|
|
|||
|
|
this.Tab3_txtContractAmount.Text = _Contract.ContractAmount.HasValue ? _Contract.ContractAmount.ToString() : "";
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.DepartId))
|
|||
|
|
{
|
|||
|
|
this.Tab3_txtDepartId.Text = DepartService.getDepartNameById(_Contract.DepartId);
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.Agent))
|
|||
|
|
{
|
|||
|
|
this.Tab3_txtAgent.Text = Person_PersonsService.GetPersonsNameById(_Contract.Agent);
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.ContractType))
|
|||
|
|
{
|
|||
|
|
Tab3_CBContractType.SelectedValueArray = _Contract.ContractType.Split();
|
|||
|
|
}
|
|||
|
|
if (!string.IsNullOrEmpty(_Contract.Remarks))
|
|||
|
|
{
|
|||
|
|
txtRemark.Text = _Contract.Remarks;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
string strSql = @" select a.ApproveId ,a.ApproveMan,a.ApproveType,a.ApproveDate ,a.ApproveIdea,a.ApproveForm
|
|||
|
|
from PHTGL_Approve a "
|
|||
|
|
+ @" where not exists (select 1 from PHTGL_Approve b where a.ApproveType=b.ApproveType and a.ContractId=b.ContractId and a.ApproveDate<b.ApproveDate ) and ContractId=@ContractId";
|
|||
|
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
|
listStr.Add(new SqlParameter("@ContractId", ContractReviewId));
|
|||
|
|
|
|||
|
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
var ApproveManModels__Countersigner = PHTGL_ContractReviewService.GetApproveManModels__Countersigner(ContractReviewId);
|
|||
|
|
var allApproveMan = ApproveManModels__Countersigner.Concat(ApproveManModels).ToList();
|
|||
|
|
foreach (DataRow dr in tb.Rows)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
string ApproveMan = dr["ApproveMan"].ToString();
|
|||
|
|
var model = allApproveMan.Find(e => e.Rolename == dr["ApproveType"].ToString());
|
|||
|
|
string ApproveType = "";
|
|||
|
|
string ApproveDate = "";
|
|||
|
|
if (model != null)
|
|||
|
|
{
|
|||
|
|
ApproveType = model.Number.ToString();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
string ApproveIdea = dr["ApproveIdea"].ToString();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
ApproveDate = string.Format("{0:D}", DateTime.Parse(dr["ApproveDate"].ToString()));
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception)
|
|||
|
|
{
|
|||
|
|
ApproveDate = "";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
switch (ApproveType)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
case "11":
|
|||
|
|
txtnode11.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "12":
|
|||
|
|
txtnode12.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "13":
|
|||
|
|
txtnode13.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "14":
|
|||
|
|
txtnode14.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "15":
|
|||
|
|
txtnode15.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "16":
|
|||
|
|
txtnode16.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
case "17":
|
|||
|
|
txtnode17.Text = ApproveIdea;
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
#region 审批同意(不同意)
|
|||
|
|
protected void btnAgree_Click(object sender, EventArgs e)
|
|||
|
|
{
|
|||
|
|
var ApproveManModels__Countersigner = PHTGL_ContractReviewService.GetApproveManModels__Countersigner(ContractReviewId);
|
|||
|
|
var allApproveMan = ApproveManModels__Countersigner.Concat(ApproveManModels).ToList();
|
|||
|
|
var number = allApproveMan.Find(x => x.Rolename == pHTGL_Approve.ApproveType).Number;
|
|||
|
|
if (number <= 6)
|
|||
|
|
{
|
|||
|
|
CountersignerSave(true);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
ApprovemanSave(true);
|
|||
|
|
}
|
|||
|
|
OAWebSevice.Pushoa();
|
|||
|
|
OAWebSevice.DoneRequest(pHTGL_Approve.ApproveId);
|
|||
|
|
BindGrid();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected void btnDisgree_Click(object sender, EventArgs e)
|
|||
|
|
{
|
|||
|
|
var ApproveManModels__Countersigner = PHTGL_ContractReviewService.GetApproveManModels__Countersigner(ContractReviewId);
|
|||
|
|
var allApproveMan = ApproveManModels__Countersigner.Concat(ApproveManModels).ToList();
|
|||
|
|
var number = allApproveMan.Find(x => x.Rolename == pHTGL_Approve.ApproveType).Number;
|
|||
|
|
if (number <= 6)
|
|||
|
|
{
|
|||
|
|
CountersignerSave(false);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
ApprovemanSave(false);
|
|||
|
|
}
|
|||
|
|
OAWebSevice.DoneRequest(pHTGL_Approve.ApproveId);
|
|||
|
|
OAWebSevice.Pushoa_Creater(pHTGL_Approve.ApproveId);
|
|||
|
|
BindGrid();
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void CountersignerSave(bool IsAgree)
|
|||
|
|
{
|
|||
|
|
pHTGL_Approve.ApproveDate = Funs.GetNewDateTimeOrNow("").ToString();
|
|||
|
|
pHTGL_Approve.State = 1;
|
|||
|
|
pHTGL_Approve.IsAgree = IsAgree ? 2 : 1;
|
|||
|
|
string txtIdea = "";
|
|||
|
|
if (IsAgree)
|
|||
|
|
{
|
|||
|
|
txtIdea = "同意";
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
txtIdea = "不同意";
|
|||
|
|
}
|
|||
|
|
pHTGL_Approve.ApproveIdea = txtApproveIdea.Text.Trim() == "" ? txtIdea : txtApproveIdea.Text; BLL.PHTGL_ApproveService.UpdatePHTGL_Approve(pHTGL_Approve);
|
|||
|
|
// ChangeState(Const.ContractReviewing);
|
|||
|
|
|
|||
|
|
if (IsAgree)
|
|||
|
|
{
|
|||
|
|
if (IsCountersignerAllAgree())
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_Approve _Approve = new Model.PHTGL_Approve();
|
|||
|
|
_Approve.ContractId = pHTGL_Approve.ContractId;
|
|||
|
|
_Approve.ApproveMan = ApproveManModels.Find(e => e.Number == 7).userid;
|
|||
|
|
_Approve.ApproveDate = "";
|
|||
|
|
_Approve.State = 0;
|
|||
|
|
_Approve.IsAgree = 0;
|
|||
|
|
_Approve.ApproveIdea = "";
|
|||
|
|
_Approve.ApproveType = ApproveManModels.Find(e => e.Number == 7).Rolename;
|
|||
|
|
_Approve.IsPushOa = 0;
|
|||
|
|
_Approve.ApproveForm = GetApproveForm(7);
|
|||
|
|
|
|||
|
|
var IsExitmodel = PHTGL_ApproveService.GetPHTGL_ApproveByContractIdAndType(_Approve.ContractId, _Approve.ApproveType);
|
|||
|
|
if (IsExitmodel == null)
|
|||
|
|
{
|
|||
|
|
_Approve.ApproveId = SQLHelper.GetNewID(typeof(Model.PHTGL_Approve));
|
|||
|
|
BLL.PHTGL_ApproveService.AddPHTGL_Approve(_Approve);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
_Approve.ApproveId = IsExitmodel.ApproveId;
|
|||
|
|
BLL.PHTGL_ApproveService.UpdatePHTGL_Approve(_Approve);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ChangeState(Const.ContractReviewing);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
ChangeState(0);//拒绝
|
|||
|
|
var model = PHTGL_ApproveService.GetPHTGL_ApproveByContractId(pHTGL_Approve.ContractId);
|
|||
|
|
if (model != null)
|
|||
|
|
{
|
|||
|
|
for (int i = 0; i < model.Count; i++)
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_Approve _Approve = model[i];
|
|||
|
|
_Approve.State = 1;
|
|||
|
|
_Approve.IsAgree = 1;
|
|||
|
|
_Approve.ApproveIdea = "其他会签人员已经拒绝";
|
|||
|
|
pHTGL_Approve.ApproveDate = Funs.GetNewDateTimeOrNow("").ToString();
|
|||
|
|
|
|||
|
|
PHTGL_ApproveService.UpdatePHTGL_Approve(_Approve);
|
|||
|
|
|
|||
|
|
OAWebSevice.DoneRequest(_Approve.ApproveId);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
ShowNotify("提交成功,流程转入下一节点!", MessageBoxIcon.Success);
|
|||
|
|
if (!string.IsNullOrEmpty(Request.Params["PHTUrl"]))
|
|||
|
|
{
|
|||
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
|
|||
|
|
PageContext.RegisterStartupScript("closeActiveTab();");
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void ApprovemanSave(bool IsAgree)
|
|||
|
|
{
|
|||
|
|
pHTGL_Approve.ApproveDate = Funs.GetNewDateTimeOrNow("").ToString();
|
|||
|
|
pHTGL_Approve.State = 1;
|
|||
|
|
pHTGL_Approve.IsAgree = IsAgree ? 2 : 1;
|
|||
|
|
string txtIdea = "";
|
|||
|
|
if (IsAgree)
|
|||
|
|
{
|
|||
|
|
txtIdea = "同意";
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
txtIdea = "不同意";
|
|||
|
|
}
|
|||
|
|
pHTGL_Approve.ApproveIdea = txtApproveIdea.Text.Trim() == "" ? txtIdea : txtApproveIdea.Text;
|
|||
|
|
BLL.PHTGL_ApproveService.UpdatePHTGL_Approve(pHTGL_Approve);
|
|||
|
|
|
|||
|
|
int thisApproveTypeNumber = ApproveManModels.Find(e => e.Rolename == pHTGL_Approve.ApproveType).Number;
|
|||
|
|
int nextApproveType = thisApproveTypeNumber + 1;
|
|||
|
|
|
|||
|
|
if (IsAgree)
|
|||
|
|
{
|
|||
|
|
if (thisApproveTypeNumber < EndApproveType)
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_Approve _Approve = new Model.PHTGL_Approve();
|
|||
|
|
_Approve.ContractId = pHTGL_Approve.ContractId;
|
|||
|
|
_Approve.ApproveMan = ApproveManModels.Find(e => e.Number == nextApproveType).userid;
|
|||
|
|
_Approve.ApproveDate = "";
|
|||
|
|
_Approve.State = 0;
|
|||
|
|
_Approve.IsAgree = 0;
|
|||
|
|
_Approve.ApproveIdea = "";
|
|||
|
|
_Approve.ApproveType = ApproveManModels.Find(e => e.Number == nextApproveType).Rolename;
|
|||
|
|
_Approve.IsPushOa = 0;
|
|||
|
|
_Approve.ApproveForm = GetApproveForm(nextApproveType);
|
|||
|
|
|
|||
|
|
var IsExitmodel = PHTGL_ApproveService.GetPHTGL_ApproveByContractIdAndType(_Approve.ContractId, _Approve.ApproveType);
|
|||
|
|
if (IsExitmodel == null)
|
|||
|
|
{
|
|||
|
|
_Approve.ApproveId = SQLHelper.GetNewID(typeof(Model.PHTGL_Approve));
|
|||
|
|
BLL.PHTGL_ApproveService.AddPHTGL_Approve(_Approve);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
_Approve.ApproveId = IsExitmodel.ApproveId;
|
|||
|
|
BLL.PHTGL_ApproveService.UpdatePHTGL_Approve(_Approve);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//ChangeState(Const.ContractReviewing);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
ChangeState(1);//成功
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
ChangeState(0);//拒绝
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
ShowNotify("提交成功,流程转入下一节点!", MessageBoxIcon.Success);
|
|||
|
|
if (!string.IsNullOrEmpty(Request.Params["PHTUrl"]))
|
|||
|
|
{
|
|||
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
|
|||
|
|
PageContext.RegisterStartupScript("closeActiveTab();");
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
#region 相关
|
|||
|
|
/// <summary>
|
|||
|
|
/// 判断是否所以会签人员都已经同意
|
|||
|
|
/// </summary>
|
|||
|
|
/// <returns></returns>
|
|||
|
|
private bool IsCountersignerAllAgree()
|
|||
|
|
{
|
|||
|
|
bool IsNext = false;
|
|||
|
|
string strsql = "select count(*) from PHTGL_Approve where State='0' and ApproveMan !='' and ContractId='" + pHTGL_Approve.ContractId + "'";
|
|||
|
|
DataTable tb = SQLHelper.RunSqlGetTable(strsql);
|
|||
|
|
if (tb != null && tb.Rows.Count > 0)
|
|||
|
|
{
|
|||
|
|
if (tb.Rows[0][0].ToString() == "0")
|
|||
|
|
{
|
|||
|
|
IsNext = true;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return IsNext;
|
|||
|
|
}
|
|||
|
|
/// <summary>
|
|||
|
|
/// 改变审批流状态 1是成功 0是拒绝
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="state"></param>
|
|||
|
|
private void ChangeState(int state)
|
|||
|
|
{
|
|||
|
|
Model.PHTGL_ContractReview _ContractReview = PHTGL_ContractReviewService.GetPHTGL_ContractReviewByContractId(contractId);
|
|||
|
|
switch (_ContractReview.State)
|
|||
|
|
{
|
|||
|
|
case Const.Contract_countersign:
|
|||
|
|
if (state == 1)
|
|||
|
|
{
|
|||
|
|
state = Const.Contract_countersign_Complete;
|
|||
|
|
}
|
|||
|
|
else if (state == 0)
|
|||
|
|
{
|
|||
|
|
state = Const.Contract_countersign_Refuse;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
break;
|
|||
|
|
case Const.ContractReviewing:
|
|||
|
|
if (state == 1)
|
|||
|
|
{
|
|||
|
|
state = Const.ContractReview_Complete;
|
|||
|
|
}
|
|||
|
|
else if (state == 0)
|
|||
|
|
{
|
|||
|
|
state = Const.ContractReview_Refuse;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
_ContractReview.State = state;
|
|||
|
|
PHTGL_ContractReviewService.UpdatePHTGL_ContractReview(_ContractReview);
|
|||
|
|
|
|||
|
|
var _Att = BLL.ContractService.GetContractById(contractId);
|
|||
|
|
if (_Att != null)
|
|||
|
|
{
|
|||
|
|
_Att.ApproveState = state;
|
|||
|
|
ContractService.UpdateContract(_Att);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 获取最终的审批节点
|
|||
|
|
/// </summary>
|
|||
|
|
/// <returns></returns>
|
|||
|
|
private void GetEndApproveType()
|
|||
|
|
{
|
|||
|
|
var ConRev = PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
|
|||
|
|
if (ConRev.State == Const.Contract_countersign)
|
|||
|
|
{
|
|||
|
|
EndApproveType = ApproveManModels.Find(x => x.Rolename == "会签法律合规部2").Number;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else if (ConRev.State == Const.ContractReviewing)
|
|||
|
|
{
|
|||
|
|
EndApproveType = ApproveManModels.Find(x => x.Rolename == "分管副总经理").Number;
|
|||
|
|
Model.PHTGL_Contract _Contract = ContractService.GetContractById(contractId);
|
|||
|
|
if (_Contract.ContractAmount >= 50000000)
|
|||
|
|
{
|
|||
|
|
EndApproveType = ApproveManModels.Find(x => x.Rolename == "董事长").Number;
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
if (_Contract.ContractAmount >= 20000000)
|
|||
|
|
{
|
|||
|
|
EndApproveType = ApproveManModels.Find(x => x.Rolename == "总经理").Number;
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
/// <summary>
|
|||
|
|
/// 获得审批类型(合同评审/合同审批)
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="number"></param>
|
|||
|
|
/// <returns></returns>
|
|||
|
|
private string GetApproveForm(int number)
|
|||
|
|
{
|
|||
|
|
if (number <= ApproveManModels.Find(x => x.Rolename == "会签法律合规部2").Number)
|
|||
|
|
{
|
|||
|
|
return PHTGL_ApproveService.ContractReview_Countersign;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return PHTGL_ApproveService.ContractReview;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
#region 分页 排序
|
|||
|
|
/// <summary>
|
|||
|
|
/// 改变索引事件
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="sender"></param>
|
|||
|
|
/// <param name="e"></param>
|
|||
|
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|||
|
|
{
|
|||
|
|
BindGrid();
|
|||
|
|
}
|
|||
|
|
/// <summary>
|
|||
|
|
/// 排序
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="sender"></param>
|
|||
|
|
/// <param name="e"></param>
|
|||
|
|
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
|||
|
|
{
|
|||
|
|
BindGrid();
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
}
|
|||
|
|
}
|