2025-03-27 15:05:14 +08:00

979 lines
51 KiB
C#

using System;
using System.Collections.Generic;
using System.IO;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml;
using SuperMap.RealEstate.Web.UI;
using SuperMap.RealEstate.Web.UI.WebControls;
using SuperMap.RealEstate.Utility;
using Business = SuperMap.RealEstate.HighWay.Running.Business;
namespace SuperMap.RealEstate.HighWay.Compents.ExpenseBill
{
public partial class PrintExpenseBill : SuperMap.RealEstate.Web.UI.UserControl
{
Business.HIGHWAYPROINST _HighWayProInst = null;
#region ViewState
string XslPath = "/HighWay/Compents/ExpenseBill/ExpenseBill.xslt";
private string ReportXmlPath
{
get
{
return ViewState["ExpenseBillXmlPath"] == null ? "" : (string)ViewState["ExpenseBillXmlPath"];
}
set
{
ViewState["ExpenseBillXmlPath"] = value;
}
}
private string ReportXslPath
{
get
{
return ViewState["ExpenseBillXslPath"] == null ? XslPath : (string)ViewState["ExpenseBillXslPath"];
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
LoadData();
return;
}
Business.EXPENSEBILL _EXPENSEBILL = new Business.EXPENSEBILL(_HighWayProInst);
_EXPENSEBILL.AddSearchParameter("HIGHWAYPROINST_ID", _HighWayProInst.HIGHWAYPROINST_ID);
if (_EXPENSEBILL.Search())
{
EXPENSEBILL_ID.Text = _EXPENSEBILL.KeyID;
ShowImgList();
}
else
{
Business.FUNDAPPLY _FUNDAPPLY = new Business.FUNDAPPLY(_HighWayProInst);
_FUNDAPPLY.AddSearchParameter("HIGHWAYPROINST_ID", _HighWayProInst.HIGHWAYPROINST_ID);
if (_FUNDAPPLY.Search())
{
FUNDAPPLY_ID.Text = _FUNDAPPLY.KeyID;
ShowImgList();
}
}
}
#region
public override bool LoadData()
{
string _FileName = "ExpenseBill_" + (string.IsNullOrEmpty(_HighWayProInst.Accept_Code) ?
Guid.NewGuid().ToString() : _HighWayProInst.Accept_Code) + ".xml";
CreateDocumentInit(_FileName);
return true;
}
#endregion
#region CreateDocumentInit
private void CreateDocumentInit(String File_Name)
{
ReportXmlPath = File_Name;
if (!Directory.Exists(EnvironmentHelper.Temp + "HighWay\\"))
Directory.CreateDirectory(EnvironmentHelper.Temp + "HighWay\\");
if (File.Exists(EnvironmentHelper.Temp + "HighWay\\" + File_Name))
File.Delete(EnvironmentHelper.Temp + "HighWay\\" + File_Name);
using (FileStream _FileStream = new FileStream(EnvironmentHelper.Temp + "HighWay\\" + File_Name, FileMode.OpenOrCreate))
{
using (StreamWriter _StreamWriter = new StreamWriter(_FileStream))
{
_StreamWriter.Write(CreateXmlBill());
_StreamWriter.Close();
InitXml();
}
}
}
#endregion
#region LoadDataEx
/// <summary>
/// 组件加载扩展
/// </summary>
/// <param name="ClientSet">脚本</param>
/// <returns></returns>
public override bool LoadDataEx(ClientSetEventArgs ClientSet)
{
string _FileName = "ExpenseBill_" + (string.IsNullOrEmpty(_HighWayProInst.Accept_Code) ?
Guid.NewGuid().ToString() : _HighWayProInst.Accept_Code) + ".xml";
//报表解析
CreateDocumentInit(_FileName);
string _Document = Running.Business.HIGHWAYPROINST.Transform(_FileName, ReportXslPath);
//执行前端重置
ClientSet.ExcuteClientScript("$('#" + ApproveBillManagement_Report.ClientID + "').html('" + _Document + "');");
return true;
}
#endregion
#region
private string CreateXmlBill()
{
XmlDocument _XmlDocument = new XmlDocument();
#region
XmlDeclaration _XmlDeclaration = _XmlDocument.CreateXmlDeclaration("1.0", "utf-8", "yes");
_XmlDocument.AppendChild(_XmlDeclaration);
XmlProcessingInstruction _XmlProcessingInstruction = _XmlDocument.CreateProcessingInstruction("xml-stylesheet", " type='text/xsl' href='" + XslPath + "'");
_XmlDocument.AppendChild(_XmlProcessingInstruction);
XmlElement _XmlElement = null;
_XmlElement = _XmlDocument.CreateElement("SuperMapDoucuments");
_XmlDocument.AppendChild(_XmlElement);
#endregion
#region
Dictionary<string, string> _Dictionary = new Dictionary<string, string>();
_Dictionary.Add("COMPACT_TYPE", "COMPACT_CHARACTER");
_Dictionary.Add("ISFORMAT", "ISYES");
//_Dictionary.Add("RENDTYPE", "RENDTYPE");
//_Dictionary.Add("RENDSTAND", "RENDSTAND");
////_Dictionary.Add("PROPOSER_TYPE", "PROPOSER_TYPE");
//_Dictionary.Add("REALTYOWNER_CHARACTER", "REALTYOWNER_CHARACTER");
//_Dictionary.Add("BUILDINGAPPROVE", "BUILDINGAPPROVE");
//_Dictionary.Add("APPRIZE_TYPE", "APPRIZE_TYPE");
//_Dictionary.Add("CERTIFICATE_TYPE", "CERTIFICATE_TYPE");
//_Dictionary.Add("APPROVED_TYPE", "APPROVED_TYPE");
//_Dictionary.Add("REFUNDSOURCE_TYPE", "REFUNDSOURCE_TYPE");
//_Dictionary.Add("REFUND_TYPE", "REFUND_TYPE");
#endregion
switch (_HighWayProInst.ProInst.Operation_Type)
{
case Enums.Operation_Type.ExpenseBill:
_XmlElement = _XmlDocument.CreateElement("SuperMap");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
GetProInst(_XmlDocument, _XmlElement, _Dictionary, true);
GetApproved(_XmlDocument, _XmlElement, _Dictionary, true);
break;
default:
_XmlElement = _XmlDocument.CreateElement("SuperMap");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
GetProInst(_XmlDocument, _XmlElement, _Dictionary, true);
GetApproved(_XmlDocument, _XmlElement, _Dictionary, true);
break;
}
#region
//根据业务类型执行文档解析
switch (_HighWayProInst.ProInst.Operation_Type.Value)
{
//合同插件
case Enums.Operation_Type.ExpenseBill:
InitExpenseBillInsert(_XmlDocument, _XmlElement, _Dictionary);
break;
}
#endregion
return _XmlDocument.InnerXml;
}
#endregion
#region
private void GetProInst(XmlDocument _XmlDocument, XmlElement _XmlElement, Dictionary<string, string> _Dictionary, bool isChildNodes = false)
{
XmlElement _ChildXmlElement = _XmlDocument.CreateElement("ProInst");
if (isChildNodes)
_XmlElement.AppendChild(_ChildXmlElement);
else
_XmlDocument.DocumentElement.AppendChild(_ChildXmlElement);
_HighWayProInst.CreateXmlNode(_HighWayProInst.ProInst, _XmlDocument, _ChildXmlElement, _Dictionary);
}
#endregion
#region
private void GetApproved(XmlDocument _XmlDocument, XmlElement _XmlElement, Dictionary<string, string> _Dictionary, bool isChildNodes = false)
{
//审批意见
foreach (Business.APPROVED _Approved in _HighWayProInst.ApprovedCollection)
{
XmlElement _ChildXmlElement = _XmlDocument.CreateElement("ApprovedInfo");
if (isChildNodes)
_XmlElement.AppendChild(_ChildXmlElement);
else
_XmlDocument.DocumentElement.AppendChild(_ChildXmlElement);
_HighWayProInst.CreateXmlNode(_Approved, _XmlDocument, _ChildXmlElement, _Dictionary);
}
}
#endregion
#region ->
private void InitExpenseBillInsert(XmlDocument _XmlDocument, XmlElement _XmlElement, Dictionary<string, string> _Dictionary)
{
if (_XmlElement == null)
throw new Exception("首节点不能为空");
int Current_Num = 1;
string SqlString = "";
string _EXPENSEBILL_ID = "";
string _EXPENSEBILL_TYPE = "";
DataTable _DataTable = null;
XmlElement _ChildInfoXmlElement = null;
#region
if (_HighWayProInst.ProInst.ProDef_Name.StartsWith("资金承付"))
{
#region
foreach (Business.APPROVED _Approved in new Business.APPROVED(_HighWayProInst).FillCollection(
"WHERE HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID))
{
switch (_Approved.Approved_Type)
{
case 1010:
_XmlElement = _XmlDocument.CreateElement("APPLY_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1020:
_XmlElement = _XmlDocument.CreateElement("DEPARTMENT_HEAD");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1030:
_XmlElement = _XmlDocument.CreateElement("FINANCE_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1040:
_XmlElement = _XmlDocument.CreateElement("STAGNATE_MANAGER");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1050:
_XmlElement = _XmlDocument.CreateElement("SERVERPART_MANAGER");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1060:
_XmlElement = _XmlDocument.CreateElement("MASTER");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
}
}
#endregion
}
else
{
WorkFlow.Support.Business.ProDefType _ProDefType = new WorkFlow.Support.Business.ProDefType(Transaction);
_ProDefType.ProDefType_ID = _HighWayProInst.ProInst.ProDef.ProDefType_ID;
if (_ProDefType.Select())
{
if (_ProDefType.ProDefType_Name.Contains("西餐"))
{
#region 西
if (_HighWayProInst.ProInst.ProDef.ProDef_Name.Contains("本级"))
{
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "2";
}
else
{
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "1";
}
#endregion
}
else if (_ProDefType.ProDefType_Name.Contains("中餐"))
{
#region
if (_HighWayProInst.ProInst.ProDef.ProDef_Name.Contains("本级"))
{
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "3";
}
else
{
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "4";
}
foreach (Business.APPROVED _Approved in new Business.APPROVED(_HighWayProInst).FillCollection(
"WHERE APPROVED_TYPE IN (1060) AND HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID))
{
switch (_Approved.Approved_Type)
{
case 1060:
_XmlElement = _XmlDocument.CreateElement("CHAIRMAN");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
}
}
#endregion
}
else if (_HighWayProInst.ProInst.ProDef_Name.Contains("浙商文化"))
{
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "5";
}
else if (_ProDefType.ProDefType_Name.Contains("火花文化"))
{
#region
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "6";
foreach (Business.APPROVED _Approved in new Business.APPROVED(_HighWayProInst).FillCollection(
"WHERE HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID))
{
switch (_Approved.Approved_Type)
{
case 1010:
_XmlElement = _XmlDocument.CreateElement("APPLY_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1020:
_XmlElement = _XmlDocument.CreateElement("DEPARTMENT_HEAD");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1030:
_XmlElement = _XmlDocument.CreateElement("ACCOUNTANT_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1040:
_XmlElement = _XmlDocument.CreateElement("FINANCE_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1050:
_XmlElement = _XmlDocument.CreateElement("MANAGER_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1060:
_XmlElement = _XmlDocument.CreateElement("CHAIRMAN_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
}
}
#endregion
}
else if (_ProDefType.ProDefType_Name.Contains("富春驿商"))
{
#region 驿
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "7";
foreach (Business.APPROVED _Approved in new Business.APPROVED(_HighWayProInst).FillCollection(
"WHERE HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID))
{
switch (_Approved.Approved_Type)
{
case 1010:
_XmlElement = _XmlDocument.CreateElement("APPLY_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1020:
_XmlElement = _XmlDocument.CreateElement("DEPARTMENT_HEAD");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_6");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_6");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_6");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1030:
_XmlElement = _XmlDocument.CreateElement("ACCOUNTANT_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_0");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_0");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_0");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1035:
_XmlElement = _XmlDocument.CreateElement("GCJYB_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_1");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_1");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_1");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1040:
_XmlElement = _XmlDocument.CreateElement("FINANCE_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_2");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_2");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_2");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1045:
_XmlElement = _XmlDocument.CreateElement("GCB_MANAGER_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_3");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_3");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_3");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1050:
_XmlElement = _XmlDocument.CreateElement("MANAGER_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_4");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_4");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_4");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1055:
_XmlElement = _XmlDocument.CreateElement("FINANCE_CONTROLLER");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_7");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_7");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_7");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
case 1060:
_XmlElement = _XmlDocument.CreateElement("CHAIRMAN_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
#region
_XmlElement = _XmlDocument.CreateElement("APPROVED_INFO_5");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Info;
_XmlElement = _XmlDocument.CreateElement("APPROVED_STAFF_5");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
_XmlElement = _XmlDocument.CreateElement("APPROVED_DATE_5");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Date.Value.ToString();
#endregion
break;
}
}
#endregion
}
else if (_ProDefType.ProDefType_Name.Contains("广告"))
{
#region 广
_XmlElement = _XmlDocument.CreateElement("Bill_Type");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "8";
foreach (Business.APPROVED _Approved in new Business.APPROVED(_HighWayProInst).FillCollection(
"WHERE HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID))
{
switch (_Approved.Approved_Type)
{
case 1010:
_XmlElement = _XmlDocument.CreateElement("APPLY_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1020:
_XmlElement = _XmlDocument.CreateElement("DEPARTMENT_HEAD");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1030:
_XmlElement = _XmlDocument.CreateElement("CASHIER_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1035:
_XmlElement = _XmlDocument.CreateElement("FINANCE_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1040:
_XmlElement = _XmlDocument.CreateElement("LEADER_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1045:
_XmlElement = _XmlDocument.CreateElement("MANAGER_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
case 1050:
_XmlElement = _XmlDocument.CreateElement("CHAIRMAN_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
break;
}
}
#endregion
}
else if (_HighWayProInst.ProInst.ProDef.ProDef_Name.Contains("服务区"))
{
//区域分管领导意见
Business.APPROVED _Approved = new Business.APPROVED(Transaction);
_Approved.AddSearchParameter("HIGHWAYPROINST_ID", _HighWayProInst.HIGHWAYPROINST_ID);
_Approved.AddSearchParameter("APPROVED_TYPE", 1045);
if (_Approved.Search())
{
_XmlElement = _XmlDocument.CreateElement("LEADER_MANAGER");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
}
}
else if (_HighWayProInst.ProInst.ProDef.ProDef_Name.Contains("区域"))
{
//区域分管领导意见
Business.APPROVED _Approved = new Business.APPROVED(Transaction);
_Approved.AddSearchParameter("HIGHWAYPROINST_ID", _HighWayProInst.HIGHWAYPROINST_ID);
_Approved.AddSearchParameter("APPROVED_TYPE", 1035);
if (_Approved.Search())
{
_XmlElement = _XmlDocument.CreateElement("LEADER_MANAGER");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _Approved.Approved_Staff;
}
}
}
}
#endregion
_XmlElement = _XmlDocument.CreateElement("PRINT_STAFF");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = Page.PassportInfo.Name;
SqlString = "SELECT * FROM HIGHWAY_RUNNING.V_EXPENSEBILL WHERE HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID;
_DataTable = _HighWayProInst.ExecuteDataTable(SqlString);
if (_DataTable.Rows.Count > 0 && !string.IsNullOrWhiteSpace(_DataTable.Rows[0]["EXPENSEBILL_ID"].ToString()))
{
string _EXPENSEBILLTYPE1 = string.Empty;
string _EXPENSEBILLTYPE2 = string.Empty;
string _EXPENSEBILLTYPE3 = string.Empty;
string _EXPENSEBILLVALUE1 = string.Empty;
string _EXPENSEBILLVALUE2 = string.Empty;
string _EXPENSEBILLVALUE3 = string.Empty;
string _EXPENSEBILLTYPE = "";
if (_HighWayProInst.ProInst.ProDef_Name.Contains("富春驿商") &&
!string.IsNullOrWhiteSpace(_DataTable.Rows[0]["EXPENSEBILL_DESC"].ToString()))
{
string[] _str = _DataTable.Rows[0]["EXPENSEBILL_DESC"].ToString().Split(',');
for (int i = 0; i < _str.Length; i++)
{
string[] _val = _str[i].Split(':');
if (_val.Length > 1)
{
switch (_val[0])
{
case "1000":
_EXPENSEBILLTYPE = "公务卡";
break;
case "2000":
_EXPENSEBILLTYPE = "工资卡";
break;
case "3000":
_EXPENSEBILLTYPE = "现金";
break;
case "4000":
_EXPENSEBILLTYPE = "公对公转账";
break;
}
if (string.IsNullOrEmpty(_EXPENSEBILLTYPE1))
{
_EXPENSEBILLTYPE1 = _EXPENSEBILLTYPE;
_EXPENSEBILLVALUE1 = _val[1];
}
else if (string.IsNullOrEmpty(_EXPENSEBILLTYPE2))
{
_EXPENSEBILLTYPE2 = _EXPENSEBILLTYPE;
_EXPENSEBILLVALUE2 = _val[1];
}
else if (string.IsNullOrEmpty(_EXPENSEBILLTYPE3))
{
_EXPENSEBILLTYPE3 = _EXPENSEBILLTYPE;
_EXPENSEBILLVALUE3 = _val[1];
}
}
}
_XmlElement = _XmlDocument.CreateElement("EXPENSEBILL_TYPE1");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _EXPENSEBILLTYPE1;
_XmlElement = _XmlDocument.CreateElement("EXPENSEBILL_TYPE2");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _EXPENSEBILLTYPE2;
_XmlElement = _XmlDocument.CreateElement("EXPENSEBILL_TYPE3");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _EXPENSEBILLTYPE3;
_XmlElement = _XmlDocument.CreateElement("EXPENSEBILL_TYPEVALUE1");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _EXPENSEBILLVALUE1;
_XmlElement = _XmlDocument.CreateElement("EXPENSEBILL_TYPEVALUE2");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _EXPENSEBILLVALUE2;
_XmlElement = _XmlDocument.CreateElement("EXPENSEBILL_TYPEVALUE3");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = _EXPENSEBILLVALUE3;
}
_EXPENSEBILL_ID = _DataTable.Rows[0]["EXPENSEBILL_ID"].ToString();
_EXPENSEBILL_TYPE = _DataTable.Rows[0]["EXPENSEBILL_TYPE"].ToString();
//经办人不显示部门信息,要去除【】里的内容
if (!string.IsNullOrWhiteSpace(_DataTable.Rows[0]["APPLY_STAFF"].ToString()))
{
_DataTable.Rows[0]["APPLY_STAFF"] = _DataTable.Rows[0]["APPLY_STAFF"].ToString().Split('【')[0];
}
if (_EXPENSEBILL_TYPE == "4000")
{
SqlString = "SELECT * FROM HIGHWAY_RUNNING.T_APPROVED WHERE HIGHWAYPROINST_ID = " +
_HighWayProInst.HIGHWAYPROINST_ID + " ORDER BY APPROVED_TYPE,APPROVED_DATE";
DataTable ApproveInfo = _HighWayProInst.ExecuteDataTable(SqlString);
foreach (DataRow _DataRow in ApproveInfo.Rows)
{
_XmlElement = _XmlDocument.CreateElement("ApprovedInfo");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
foreach (DataColumn _DataColumn in ApproveInfo.Columns)
{
_ChildInfoXmlElement = _XmlDocument.CreateElement(_DataColumn.ColumnName);
_XmlElement.AppendChild(_ChildInfoXmlElement);
try
{
_ChildInfoXmlElement.InnerText = _DataRow[_DataColumn.ColumnName].ToString();
}
catch { }
}
}
}
else if (_HighWayProInst.ProInst.ProInst_FinishDate >= DateTime.Parse("2018/3/20"))
{
_XmlElement = _XmlDocument.CreateElement("ProcessType");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
_XmlElement.InnerText = "1";
}
foreach (DataColumn _DataColumn in _DataTable.Columns)
{
_XmlElement = _XmlDocument.CreateElement(_DataColumn.ColumnName);
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
try
{
if ((_EXPENSEBILL_TYPE == "1000" && _DataColumn.ColumnName == "PREPAY_DATE") ||
_DataColumn.ColumnName == "EXPENSE_DATE")
{
_XmlElement.InnerText = DateTime.Parse(_DataTable.Rows[0][
_DataColumn.ColumnName].ToString()).ToLongDateString();
}
else if (_DataColumn.ColumnName == "PAYMENT_DETAIL")
{
_XmlElement.InnerText = Storage.Business.CommonHelper.ConvertToHTML(
_DataTable.Rows[0][_DataColumn.ColumnName].ToString());
}
else if (_DataColumn.ColumnName == "PRINT_COUNT" && _DataTable.Rows[0]["PRINT_COUNT"].ToString() == "")
{
_XmlElement.InnerText = "0";
}
else
{
_XmlElement.InnerText = _DataTable.Rows[0][_DataColumn.ColumnName].ToString();
}
}
catch { }
}
SqlString = "SELECT * FROM HIGHWAY_RUNNING.T_EXPENSEDETAIL WHERE EXPENSEBILL_ID = " +
_EXPENSEBILL_ID + " ORDER BY EXPENSEDETAIL_ID";
_DataTable = _HighWayProInst.ExecuteDataTable(SqlString);
foreach (DataRow _DataRowShopInfo in _DataTable.Rows)
{
_XmlElement = _XmlDocument.CreateElement("EXPENSEDETAILCollection");
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
//序号
_ChildInfoXmlElement = _XmlDocument.CreateElement("Current_Num");
_XmlElement.AppendChild(_ChildInfoXmlElement);
_ChildInfoXmlElement.InnerText = Current_Num++.ToString();
//门店收营信息
foreach (DataColumn _DataColumn in _DataTable.Columns)
{
_ChildInfoXmlElement = _XmlDocument.CreateElement(_DataColumn.ColumnName);
_XmlElement.AppendChild(_ChildInfoXmlElement);
try
{
if (_EXPENSEBILL_TYPE == "1000" && _DataColumn.ColumnName == "START_DATE")
{
_ChildInfoXmlElement.InnerText = DateTime.Parse(_DataRowShopInfo[_DataColumn.ColumnName].ToString()).Hour > 0 ?
DateTime.Parse(_DataRowShopInfo[_DataColumn.ColumnName].ToString()).ToString("MM月dd日 HH时") :
DateTime.Parse(_DataRowShopInfo[_DataColumn.ColumnName].ToString()).ToString("MM月dd日");
}
else if (_EXPENSEBILL_TYPE == "1000" && _DataColumn.ColumnName == "ARRIVE_DATE")
{
_ChildInfoXmlElement.InnerText = DateTime.Parse(_DataRowShopInfo[_DataColumn.ColumnName].ToString()).Hour > 0 ?
DateTime.Parse(_DataRowShopInfo[_DataColumn.ColumnName].ToString()).ToString("MM月dd日 HH时") :
DateTime.Parse(_DataRowShopInfo[_DataColumn.ColumnName].ToString()).ToString("MM月dd日");
}
else if (_EXPENSEBILL_TYPE == "3000" && _DataColumn.ColumnName == "EXPENSEDETAIL_DATE")
{
_ChildInfoXmlElement.InnerText = DateTime.Parse(_DataTable.Rows[0][
_DataColumn.ColumnName].ToString()).ToLongDateString();
}
else
{
_ChildInfoXmlElement.InnerText = _DataRowShopInfo[_DataColumn.ColumnName].ToString();
}
}
catch { }
}
}
SqlString = @"SELECT SUM(BILL_COUNT) AS TOTALBILL_COUNT,SUM(BILL_AMOUNT) AS TOTALBILL_AMOUNT,
SUM(SUBSIDY_POPULATION) AS TOTALSUBSIDY_POPULATION,SUM(SUBSIDY_DAY) AS TOTALSUBSIDY_DAY,
SUM(SUBSIDY_AMOUNT) AS TOTALSUBSIDY_AMOUNT,SUM(OTHERBILL_COUNT) AS TOTALOTHERBILL_COUNT,
SUM(OTHERBILL_AMOUNT) AS TOTALOTHERBILL_AMOUNT
FROM HIGHWAY_RUNNING.T_EXPENSEDETAIL WHERE EXPENSEBILL_ID = " + _EXPENSEBILL_ID;
_DataTable = _HighWayProInst.ExecuteDataTable(SqlString);
foreach (DataRow _DataRowShopInfo in _DataTable.Rows)
{
foreach (DataColumn _DataColumn in _DataTable.Columns)
{
_XmlElement = _XmlDocument.CreateElement(_DataColumn.ColumnName);
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
try
{
_XmlElement.InnerText = _DataTable.Rows[0][_DataColumn.ColumnName].ToString();
}
catch { }
}
}
}
SqlString = "SELECT * FROM HIGHWAY_RUNNING.T_FUNDAPPLY WHERE HIGHWAYPROINST_ID = " + _HighWayProInst.HIGHWAYPROINST_ID;
_DataTable = _HighWayProInst.ExecuteDataTable(SqlString);
if (_DataTable.Rows.Count > 0)
{
#region
if (_DataTable.Rows.Count > 0)
{
foreach (DataColumn _DataColumn in _DataTable.Columns)
{
_XmlElement = _XmlDocument.CreateElement(_DataColumn.ColumnName);
_XmlDocument.DocumentElement.AppendChild(_XmlElement);
try
{
switch (_DataColumn.ColumnName)
{
case "OBSOLETE_DATE":
case "EXPENDBILL_DATE":
case "BUY_DATE":
case "OPERATE_DATE":
case "START_DATE":
case "ARRIVE_DATE":
case "EXPENSEDETAIL_DATE":
case "PAYEE_DATE":
case "FUNDAPPLY_CREATEDATE":
case "APPLY_DATE":
case "VISITOR_DATE":
_XmlElement.InnerText = DateTime.Parse(_DataTable.Rows[0][_DataColumn.ColumnName].ToString()).ToLongDateString();
break;
default:
_XmlElement.InnerText = _DataTable.Rows[0][_DataColumn.ColumnName].ToString();
break;
}
}
catch
{
_XmlElement.InnerText = _DataTable.Rows[0][_DataColumn.ColumnName].ToString();
}
}
}
#endregion
}
}
#endregion
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
Common.PageHelper.CreateHeaderStyle(Page);
_HighWayProInst = Business.HIGHWAYPROINST.CreateInstance(Page);
this.ButtonVisible = false;
InitXml();
}
private void InitXml()
{
if (!string.IsNullOrEmpty(ReportXmlPath))
{
Xml1.TransformSource = ReportXslPath;
Xml1.DocumentSource = @"/Temporary/Temp/HighWay/" + ReportXmlPath;
}
}
protected void CallBackButton_Print_CallBackClick(object sender, ClientSetEventArgs e)
{
Business.EXPENSEBILL _EXPENSEBILL = new Business.EXPENSEBILL(_HighWayProInst);
_EXPENSEBILL.AddSearchParameter("HIGHWAYPROINST_ID", _HighWayProInst.HIGHWAYPROINST_ID);
if (_EXPENSEBILL.Search())
{
_EXPENSEBILL.PRINT_COUNT = _EXPENSEBILL.PRINT_COUNT == null ? 1 : (_EXPENSEBILL.PRINT_COUNT + 1);
_EXPENSEBILL.Update();
InitXml();
}
e.ClientScript = Page.GetOpenPopDialogClientScript("/HighWay/Common/ReportDefault.aspx?ReportXmlPath=" +
ReportXmlPath + "&ReportXslPath=/PrintReport/HighWay/ExpenseBill/ExpenseBill.xslt&ProInst_ID=" +
_HighWayProInst.ProInst.ProInst_ID_Encrypt.ToString(), "ReportDefault", 1000, 600, true, false, true);
}
public override bool Save(bool AutoBindData = true)
{
InitXml();
return true;
}
public override bool SaveEx(ClientSetEventArgs ClientSet)
{
return true;
}
protected void CallBackButton_Reflash_CallBackClick(object sender, ClientSetEventArgs e)
{
LoadDataEx(e);
}
protected void Button_Reflash_Click(object sender, EventArgs e)
{
LoadData();
}
#region
public void ShowImgList()
{
if (_HighWayProInst != null)
{
DataTable dt = new DataTable();
if (!string.IsNullOrWhiteSpace(EXPENSEBILL_ID.Text))
{
dt = new Storage.Business.IMAGE(this.Transaction).FillDataTable("WHERE TABLE_ID = " +
EXPENSEBILL_ID.Text + " AND TABLE_NAME = 'T_EXPENSEBILL' AND ROWNUM <= 1");
}
else if (!string.IsNullOrWhiteSpace(FUNDAPPLY_ID.Text))
{
dt = new Storage.Business.IMAGE(this.Transaction).FillDataTable("WHERE TABLE_ID = " +
FUNDAPPLY_ID.Text + " AND TABLE_NAME = 'T_FUNDAPPLY' AND ROWNUM <= 1");
}
ratTable.DataSource = dt;
ratTable.DataBind();
}
}
protected void ratTable_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
if (!string.IsNullOrWhiteSpace(EXPENSEBILL_ID.Text))
{
((ImageButton)e.Item.FindControl("ImgShow")).OnClientClick = Page.GetOpenPopDialogClientScript(
"/HighWay/Modules/003_BaoXiao/ExpenseBill/Bill/IMAGEPage.aspx?EXPENSEBILL_ID=" +
EXPENSEBILL_ID.Text.ToEncrypt(), "IMAGEPage", 850, 600, true, false, true);
}
else if (!string.IsNullOrWhiteSpace(FUNDAPPLY_ID.Text))
{
((ImageButton)e.Item.FindControl("ImgShow")).OnClientClick = Page.GetOpenPopDialogClientScript(
"/HighWay/Modules/003_BaoXiao/ExpenseBill/Bill/IMAGEPage.aspx?FUNDAPPLY_ID=" +
FUNDAPPLY_ID.Text.ToEncrypt(), "IMAGEPage", 850, 600, true, false, true);
}
}
}
#endregion
}
}