using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using GThinking.N_PUBLIC;
using GThinking.N_MODEL.Page;
using GThinking.N_MISPRO.Utility;
using GThinking.N_MISPRO.TableCache;
using GThinking.N_MISPRO;
using GThinking.N_MISPRO.Data;
using System.Text;
namespace GThinking.N_XLXSBJ
{
public partial class CLYL_YJGTInfo : SingleCardBase
{
CLYL_YJGT entity = new CLYL_YJGT();
#region 页面初始化
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860014;
this.UMName = "线缆销售报价材料用量";
this.CurMaster = Master;
this.CurEntity = entity;
this.Master.EnableAttachBtn = false;
this.PageWidth = 500;
this.PageHeight = 400;
this.Master.EnableCopyBtn = false;
this.Master.EnableInsertBtn = false;
this.Master.EnableAttachBtn = false;
this.Master.EnableCancelBtn = false;
this.Master.EnableDeleteBtn = false;
this.Master.EnableEditBtn = false;
this.Master.EnableSaveBtn = false;
this.Master.EnablePrintBtn = false;
base.InitPage();
txtGTNR.ToolbarStartExpanded = false;
txtSJR.Text = "";
if (!txtSJRMC.Value.Trim().Equals(""))
{
txtSJR.Text = txtSJRMC.Value.Trim() + ";";
}
txtCSR.Text = "";
if (!txtCSRMC.Value.Trim().Equals(""))
{
txtCSR.Text = txtCSRMC.Value.Trim() + ";";
}
}
#endregion
#region 模板事件继承W
protected override void LoadRecord()
{
base.LoadRecord();
}
protected override void OnNewRecorder()
{
base.OnNewRecorder();
if (string.IsNullOrEmpty(PageParam.GetRTrimString("tmpSJR")))
{
GetYJXX(PageParam.GetRTrimString("AFID"));
}
else
{
txtSJRGH.Value = PageParam.GetRTrimString("tmpSJR").Trim();
txtSJRMC.Value = GetUserNames(txtSJRGH.Value);
txtSJR.Text = txtSJRMC.Value + ";";
txtCSRGH.Value = PageParam.GetRTrimString("tmpCSR").Trim();
if (!string.IsNullOrEmpty(txtCSRGH.Value))
{
txtCSRMC.Value = GetUserNames(txtCSRGH.Value);
txtCSR.Text = txtCSRMC.Value + ";";
}
}
}
protected override void SetControlState()
{
base.SetControlState();
txtSJR.Enabled = false;
txtCSR.Enabled = false;
}
#endregion
#region 自定义函数
private string getURL(int FUMID, string FWFID,string FWFINST)
{
TPageParams Tpp_Mail = new TPageParams();
Tpp_Mail.UrlPath = getURL(Convert.ToInt32(FUMID), FWFID.Trim());
Tpp_Mail.CallAction = TPageCallAction.pcaBrowse;
Tpp_Mail.AddString("WFID", FWFID.Trim());
Tpp_Mail.AddString("WFINST", FWFINST);
if (DSActiveModule.GetAMIDByUMID(int.Parse(FUMID.ToString())) != 0)
{
Tpp_Mail.UMID = int.Parse(FUMID.ToString());
Tpp_Mail.AddString("FUNCID", FUMID.ToString());
}
string sUrl = Utils.GetEncodedUrl(Convert.ToInt32(FUMID), Tpp_Mail);
return sUrl;
}
private string getURL(int UMID, string WFID)
{
return GThinking.N_MISPRO.TableCache.DSActiveModule.getAMPageURL(UMID, WFID);
}
private string getMailUser(string GHList)
{
string sResult = string.Empty;
foreach (string GH in GHList.Split(','))
{
if (tSession.GetUser(GH) != null)
sResult += string.Format("{0}<{1}>,", tSession.GetUser(GH).Name, GH);
}
return sResult;
}
private string GetUserNames(string sUserGH)
{
string rstr = "";
foreach (string sGH in sUserGH.Split(','))
{
string tName = TRYXX.GetRYXXByGH(sGH).XM;
if (!rstr.Equals(""))
{
rstr += ",";
}
rstr += tName;
}
return rstr;
}
//是否有100232002模块浏览权限
private bool CheckYJLL(string sGH)
{
UserRight UR = OpRightUtils.GetUserRight(sGH, 100232002);
return (DSActiveModule.IsActiveModule(100232002) && UR.Open);
}
//查询邮件信息
private void GetYJXX(string AFID)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add(" select AFFROMUSRID,AFUSRNAME,AFFROMTIME,AFTOUSERS,AFCOPYFOR,AFTITLE,AFCONTENT ");
SQL.Add(" from AFFAIR where AFID=:pAFID ");
SQL.ParamByName("pAFID").Value = AFID;
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
string sFJR = "";
if (ds.Tables[0].Rows[0]["AFFROMUSRID"].ToString().IndexOf("@") != -1) //外网发件人
sFJR = ds.Tables[0].Rows[0]["AFFROMUSRID"].ToString().Trim();
else
sFJR = GetMCID(ds.Tables[0].Rows[0]["AFFROMUSRID"].ToString().Trim());
string sFJSJ = ds.Tables[0].Rows[0]["AFFROMTIME"].ToString().Trim();
string sSend1 = ds.Tables[0].Rows[0]["AFTOUSERS"].ToString().Trim();
string sSend2 = ds.Tables[0].Rows[0]["AFCOPYFOR"].ToString().Trim();
string sTitle = ds.Tables[0].Rows[0]["AFTITLE"].ToString().Trim();
string sContent = ds.Tables[0].Rows[0]["AFCONTENT"].ToString().Trim();
txtTitle.Value = sTitle;
txtGTNR.Value = GetQuote("#FFFF99", sFJR, sFJSJ, sSend1, sSend2, sTitle, sContent);
txtSJRGH.Value = GetYJYHGH(sFJR);
txtSJRMC.Value = GetUserNames(txtSJRGH.Value);
txtSJR.Text = txtSJRMC.Value + ";";
txtCSRGH.Value = GetCSR(GetYJYHGH(sSend1 + "," + sSend2), txtSJRGH.Value);
if (!string.IsNullOrEmpty(txtCSRGH.Value))
{
txtCSRMC.Value = GetUserNames(txtCSRGH.Value);
txtCSR.Text = txtCSRMC.Value + ";";
}
}
}
//整合抄送人,如果抄送人里已经包含了收件人,则剔除收件人
private string GetCSR(string sCSR, string sSJR)
{
string sRCSR = "";
foreach (string tempCSR in sCSR.Split(','))
{
if (!("," + sSJR + ",").Contains("," + tempCSR + ","))
{
if (!sRCSR.Equals(""))
sRCSR += ",";
sRCSR += tempCSR;
}
}
return sRCSR;
}
private String GetMCID(string sID)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
DataSet ds;
sql.Add("select rtrim(RSRYJBXX_RYMC) as MAILNAME from RSRYJBXX ");
sql.Add("where RSRYJBXX_GH=:pGH and isnull(RSRYJBXX_USER,' ')='Y'");
sql.ParamByName("pGH").Value = sID;
ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
return string.Format("{0}<{1}>", ds.Tables[0].Rows[0]["MAILNAME"].ToString().Trim(), sID);
}
else
return "";
}
private string GetYJYHGH(string sYJRY)
{
string sRYGHList = "";
foreach (string sRY in sYJRY.Split(','))
{
if (!sRY.Trim().Equals(""))
{
string sID = "";
string [] arrIdAndName = sRY.Split('<');
if (arrIdAndName.Length <= 1)
{
sID = arrIdAndName[0];
}
else
{
sID = arrIdAndName[1].ToString().TrimEnd('>');
}
if (!sRYGHList.Equals(""))
sRYGHList += ",";
sRYGHList += sID;
}
}
return sRYGHList;
}
// 引用原邮件的内容
private String GetQuote(string backColor, string mailUserName, string mailFromTime, string mailToUsers, string mailCopyFor, string mailTitle, string mailContent)
{
string style = "background-color:" + backColor + ";padding-left:5px;padding-right:5px;word-break:break-all;";
StringBuilder sResult = new StringBuilder();
sResult.AppendLine("
");
sResult.AppendLine("