This commit is contained in:
2026-08-21 17:03:02 +08:00
commit f065129b20
2292 changed files with 666241 additions and 0 deletions
+360
View File
@@ -0,0 +1,360 @@
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("<br><br><br><br><font face=宋体 size=2>");
sResult.AppendLine("<div style='border:#000000 1px solid;width:95%'>");
sResult.AppendLine("<div align=center style='" + style + ";border-bottom:#000000 1px solid;padding:5px'><strong>回复邮件</strong></div>");
sResult.AppendLine("<div style='" + style + ";padding-top:5px'><strong>" + "发件人:" + "</strong>" + mailUserName + "</div>");
sResult.AppendLine("<div style='" + style + "'>&nbsp;&nbsp;<strong>" + "时间:" + "</strong>" + mailFromTime + "</div>");
sResult.AppendLine("<div style='" + style + "'><strong>" + "收件人:" + "</strong>" + mailToUsers + "</div>");
sResult.AppendLine("<div style='" + style + "'>&nbsp;&nbsp;<strong>" + "抄送:" + "</strong>" + mailCopyFor + "</div>");
sResult.AppendLine("<div style='" + style + ";border-bottom:#000000 1px solid;padding-bottom:5px'>&nbsp;&nbsp;<strong>" + "主题:" + "</strong>" + mailTitle + "</div>");
sResult.AppendLine("</div></font>");
sResult.AppendLine("<div style='padding:0px'>" + "<br>" + mailContent + "</div>");
return sResult.ToString();
}
#endregion
protected void btnOK_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(txtSJRGH.Value))
{
ShowMessage("收件人不允许为空!");
return;
}
if (string.IsNullOrEmpty(txtGTNR.Value.Trim()))
{
ShowMessage("沟通内容不允许为空!");
return;
}
foreach (string sSJRGH in txtSJRGH.Value.Trim().Split(','))
{
if (!CheckYJLL(sSJRGH))
{
ShowMessage(sSJRGH + "|" + tSession.GetUser(sSJRGH).Name + "无[100232002|邮件]模块权限,无法接收您发送的邮件!");
return;
}
}
if (!txtCSRGH.Value.Trim().Equals(""))
{
foreach (string sCSRGH in txtCSRGH.Value.Trim().Split(','))
{
if (!CheckYJLL(sCSRGH))
{
ShowMessage(sCSRGH + "|" + tSession.GetUser(sCSRGH).Name + "无[100232002|邮件]模块权限,无法接收您发送的邮件!");
return;
}
}
}
if (string.IsNullOrEmpty(PageParam.GetRTrimString("tmpSJR")))
{
string sTitel = "";
if (txtTitle.Value.Trim().IndexOf("答复:") > -1)
sTitel = txtTitle.Value.Trim();
else
sTitel = "答复:" + txtTitle.Value.Trim();
string sNR = txtGTNR.Value;
string sSJR = getMailUser(txtSJRGH.Value.Trim());
string sCSR = getMailUser(txtCSRGH.Value.Trim());
CMISproSystemOperation.SendMail2(tSession, tSession.UserId, sSJR, sTitel, sNR, sCSR, "", 0.0, "", "", true);
ShowMessage(sTitel + "邮件发送成功!");
DialogOperationScript dos = new DialogOperationScript(this);
dos.CloseOwner();
dos.CloseSelf();
dos.Execute();
}
else
{
string sMDID = PageParam.GetRTrimString("tmpMDID").Trim();
string sWFINST = PageParam.GetRTrimString("tmpWFINST").Trim();
string sWFID = PageParam.GetRTrimString("tmpWFID").Trim();
string sBJDID = PageParam.GetRTrimString("tmpBJDID").Trim();
string sTitel = "线缆销售报价【" + sBJDID + "】材料用量沟通";
string sNR = txtGTNR.Value;
sNR += "<br/><br/>详见<a href=\"javascript:top.GT_showModalDialog('','" + getURL(Convert.ToInt32(sMDID), sWFID, sWFINST) + "', 0, 0, null, window.parent);\">相关业务功能</a>";
string sSJR = getMailUser(txtSJRGH.Value.Trim());
string sCSR = getMailUser(txtCSRGH.Value.Trim());
CMISproSystemOperation.SendMail2(tSession, tSession.UserId, sSJR, sTitel, sNR, sCSR, "", 0.0, "", "", true);
ShowMessage(sTitel + "邮件发送成功!");
DialogOperationScript dos = new DialogOperationScript(this);
dos.CloseSelf();
dos.Execute();
}
}
protected void btnQX_Click(object sender, EventArgs e)
{
DialogOperationScript dos = new DialogOperationScript(this);
dos.CloseSelf();
dos.Execute();
}
protected void btnSJ_Click(object sender, EventArgs e)
{
TRYXX.OpenSelectRYBMDialog(false, true, false, false, txtSJRID.ClientID, txtSJRGH.ClientID, txtSJRMC.ClientID, "", "", "", "", txtSJR.ClientID, "", txtSJRID.ClientID, txtSJRGH.Value, "", "", false, true, "", "", btnSJ);
}
protected void btnCS_Click(object sender, EventArgs e)
{
TRYXX.OpenSelectRYBMDialog(false, true, false, false, txtCSRID.ClientID, txtCSRGH.ClientID, txtCSRMC.ClientID, "", "", "", "", txtCSR.ClientID, "", txtCSRID.ClientID, txtCSRGH.Value, "", "", false, true, "", "", btnCS);
}
}
}