You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

561 lines
30 KiB

using Newtonsoft.Json;
using NFine.Code;
using NFine.Data.Extensions;
using NFine.Domain._03_Entity.SRM;
using NFine.Domain.Entity.ProductManage;
using NFine.Domain.IRepository.ProductManage;
using NFine.Repository;
using NFine.Repository.ProductManage;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using System.Text;
namespace NFine.Application.SRM
{
public class POSignBacksApp : RepositoryFactory<ICSPO_PoMain>
{
public DataTable GetGridJson(string queryJson, ref Pagination jqgridparam)
{
DataTable dt = new DataTable();
var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>();
string EATTRIBUTE = SqlHelper.GetEATTRIBUTE("ICSPurchaseOrder","a").TrimEnd(',');
string sql = @" SELECT DISTINCT POCode
,CONVERT(NVARCHAR(15),CreateDateTime,23) AS PODate
,c.ProjectCode
,a.VenCode
,d.VenName
,CreatePerson
,a.Filename AS Filename
,a.uploadcomment AS uploadcomment
,MAX(a.uploadFrequency) AS uploadFrequency
,MAX(a.DownloadFrequency) AS DownloadFrequency
,case when a.SignBackStatus=1 or ISNULL(a.SignBackStatus,'')='' then '未回签' WHEN a.SignBackStatus=2 then '待确认'WHEN a.SignBackStatus=3 then '已确认'WHEN a.SignBackStatus=4 then '退回' END as signBackstate
,a.WorkPoint
,a.BackComment
,case when a.SignBackStatus=1 or ISNULL(a.SignBackStatus,'')='' then '未回签' WHEN a.SignBackStatus=2 then '待确认'WHEN a.SignBackStatus=3 then '已确认'WHEN a.SignBackStatus=4 then '退回' END as STATUS
," + EATTRIBUTE + "";
sql+=@" FROM dbo.ICSPurchaseOrder a
LEFT JOIN ICSINVENTORY b on a.InvCode=b.INVCODE and a.WorkPoint=b.WorkPoint
LEFT JOIN dbo.ICSExtension c ON a.ExtensionID=c.ID AND a.WorkPoint=c.WorkPoint
LEFT JOIN dbo.ICSVendor d ON a.VenCode=d.VenCode AND a.WorkPoint=d.WorkPoint
WHERE 1=1 and a.ReleaseState='1' --and a.Status<>'3'
";
if (!string.IsNullOrWhiteSpace(queryJson))
{
// if (!string.IsNullOrWhiteSpace(queryParam["ORDERNO"].ToString()))
//{
// sql += " and ORDERNO like '%" + queryParam["ORDERNO"].ToString() + "%' ";
//}
if (!string.IsNullOrWhiteSpace(queryParam["POCode"].ToString()))
{
sql += " and a.POCode like '%" + queryParam["POCode"].ToString() + "%' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["BeginDate"].ToString()))
{
sql += " and a.CreateDateTime >='" + queryParam["BeginDate"].ToString() + "' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["EndDate"].ToString()))
{
sql += " and a.CreateDateTime <='" + queryParam["EndDate"].ToString() + "'";
}
if (!string.IsNullOrWhiteSpace(queryParam["VenCode"].ToString()))
{
sql += " and a.VenCode like '%" + queryParam["VenCode"].ToString() + "%' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["VenName"].ToString()))
{
sql += " and d.VenName like '%" + queryParam["VenName"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["InvCode"].ToString()))
{
sql += " and b.InvCode like '%" + queryParam["InvCode"].ToString() + "%' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["InvName"].ToString()))
{
sql += " and b.InvName like '%" + queryParam["InvName"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["EATTRIBUTE12"].ToString()))
{
sql += " and a.EATTRIBUTE12 like '%" + queryParam["EATTRIBUTE12"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["U8Status"].ToString()))
{
string U8Status = queryParam["U8Status"].ToString();
if (U8Status == "0")
sql += " and isnull(Status,'')<>'3'";
else if (U8Status == "2")
sql += " and isnull(Status,'')='3'";
}
//if (!string.IsNullOrWhiteSpace(queryParam["CreatePerson"].ToString()))
//{
// sql += " and CreatePerson like '%" + queryParam["CreatePerson"].ToString() + "%'";
//}
if (!string.IsNullOrWhiteSpace(queryParam["ReleaseState"].ToString()))
{
string ReleaseState = queryParam["ReleaseState"].ToString();
if (ReleaseState == "1")
sql += " and a.SignBackStatus = '1'";
else if (ReleaseState == "2")
sql += " and a.SignBackStatus = '2'";
else if (ReleaseState == "3")
sql += " and a.SignBackStatus = '3'";
else if (ReleaseState == "0")
sql += " and (ISNULL(a.SignBackStatus,'') = ''OR ISNULL(a.SignBackStatus,'') = '1')";
else if (ReleaseState == "4")
{
sql += " and ISNULL(a.SignBackStatus,0) = '4'";
}
}
if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode.Contains("Vendor"))
{
sql += " and a.VenCode in (SELECT VenCode FROM ICSVendor where VenName ='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserName + "' AND a.WorkPoint=ICSVendor.WorkPoint)";
}
//else
//{
// if (NFine.Code.OperatorProvider.Provider.GetCurrent().IsSystem == false)
// {
// sql += " and CreatePerson='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserName + "'";
// }
//}
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
sql += " and a.WorkPoint in (" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',') + ")";
sql += @"
GROUP BY POCode,CreateDateTime,c.ProjectCode,a.VenCode,d.VenName,a.SignBackStatus,CreatePerson,a.Filename,a.uploadcomment,a.BackComment,a.WorkPoint,ArriveDate ,a.EATTRIBUTE7,a.EATTRIBUTE8,
a.EATTRIBUTE9,a.EATTRIBUTE10 ,a.EATTRIBUTE11 ,a.EATTRIBUTE12 ";
}
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam);
}
public string ChridenList(string keyValue, string WorkPoint)
{
keyValue = keyValue.Substring(1, keyValue.Length - 2);
WorkPoint = WorkPoint.Substring(1, WorkPoint.Length - 2);
string msg = "";
string sql = "SELECT ArriveDate,Status FROM dbo.ICSPurchaseOrder WHERE PoCode='{0}' and WorkPoint='{1}'";
sql = string.Format(sql, keyValue, WorkPoint);
DataTable dt = SqlHelper.GetDataTableBySql(sql);
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i]["Status"].ToString() != "3")//判断是否关闭
{
if (dt.Rows[i]["ArriveDate"].ToString() == "" || dt.Rows[i]["ArriveDate"].ToString() == null)
{
msg = "请先填写交期一!";
}
}
}
return msg;
}
public DataTable GetGridJsonCommint(string queryJson, ref Pagination jqgridparam)
{
//string ParentId = "";
DataTable dt = new DataTable();
var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>();
string EATTRIBUTE = SqlHelper.GetEATTRIBUTE("ICSPurchaseOrder", "a").TrimEnd(',');
string sql = @" SELECT DISTINCT POCode
,CONVERT(NVARCHAR(15),CreateDateTime,23) AS PODate
,e.ProjectCode
,a.VenCode
,d.VenName
,ReleaseState
,CreatePerson
,a.Filename Filename
,a.uploadcomment uploadcomment
,MAX(a.uploadFrequency) AS uploadFrequency
,MAX(a.DownloadFrequency) AS DownloadFrequency
,case when a.SignBackStatus=1or ISNULL(a.SignBackStatus,'')='' then '未回签' WHEN a.SignBackStatus=2 then '确认中'WHEN a.SignBackStatus=3 then '已回签' WHEN a.SignBackStatus=4 then '退回' END as signBackstate
,a.WorkPoint,a.BackComment
,case when a.SignBackStatus=1or ISNULL(a.SignBackStatus,'')='' then '未回签' WHEN a.SignBackStatus=2 then '确认中'WHEN a.SignBackStatus=3 then '已回签' WHEN a.SignBackStatus=4 then '退回' END as STATUS
," + EATTRIBUTE + "";
sql+=@" FROM dbo.ICSPurchaseOrder a
LEFT JOIN dbo.Sys_SRM_User b ON a.VenCode=b.F_VenCode AND a.WorkPoint=b.F_Location
LEFT JOIN ICSINVENTORY c on a.InvCode=c.INVCODE and a.WorkPoint=c.WorkPoint
LEFT JOIN dbo.ICSVendor d ON a.VenCode=d.VenCode AND a.WorkPoint=d.WorkPoint
LEFT JOIN dbo.ICSExtension e ON a.ExtensionID=e.ID AND a.WorkPoint=e.WorkPoint
WHERE 1=1 and a.ReleaseState='1' ";
if (!string.IsNullOrWhiteSpace(queryJson))
{
//if (!string.IsNullOrWhiteSpace(queryParam["ORDERNO"].ToString()))
//{
// sql += " and a.ORDERNO like '%" + queryParam["ORDERNO"].ToString() + "%' ";
//}
if (!string.IsNullOrWhiteSpace(queryParam["POCode"].ToString()))
{
sql += " and a.POCode like '%" + queryParam["POCode"].ToString() + "%' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["BeginDate"].ToString()))
{
sql += " and a.CreateDateTime >='" + queryParam["BeginDate"].ToString() + "' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["EndDate"].ToString()))
{
sql += " and a.CreateDateTime <='" + queryParam["EndDate"].ToString() + "'";
}
if (!string.IsNullOrWhiteSpace(queryParam["VenCode"].ToString()))
{
sql += " and a.VenCode like '%" + queryParam["VenCode"].ToString() + "%' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["VenName"].ToString()))
{
sql += " and d.VenName like '%" + queryParam["VenName"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["CreatePerson"].ToString()))
{
sql += " and a.CreatePerson like '%" + queryParam["CreatePerson"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["InvCode"].ToString()))
{
sql += " and c.InvCode like '%" + queryParam["InvCode"].ToString() + "%' ";
}
if (!string.IsNullOrWhiteSpace(queryParam["InvName"].ToString()))
{
sql += " and c.InvName like '%" + queryParam["InvName"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["EATTRIBUTE12"].ToString()))
{
sql += " and a.EATTRIBUTE12 like '%" + queryParam["EATTRIBUTE12"].ToString() + "%'";
}
if (!string.IsNullOrWhiteSpace(queryParam["U8Status"].ToString()))
{
string U8Status = queryParam["U8Status"].ToString();
if (U8Status == "0")
sql += " and isnull(STATUS,'')<>'3'";
else if (U8Status == "1")
sql += " and isnull(STATUS,'')='3'";
}
if (!string.IsNullOrWhiteSpace(queryParam["ReleaseState"].ToString()))
{
string ReleaseState = queryParam["ReleaseState"].ToString();
if (ReleaseState == "2")
sql += " and a.SignBackStatus = '2'";
else if (ReleaseState == "3")
sql += " and a.SignBackStatus = '3'";
else if (ReleaseState == "4")
sql += " and (ISNULL(a.SignBackStatus,'')='' OR ISNULL(a.SignBackStatus,'') = '1')";
else if (ReleaseState == "5")
sql += " and ISNULL(a.SignBackStatus,'')='4'";
}
//else
//{
// sql += " and SignBackState in('2','3')";
//}
if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode.Contains("Vendor"))
{
sql += " and a.VenCode in (SELECT VenCode FROM ICSVendor where VenName ='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserName + "'AND a.WorkPoint=ICSVendor.WorkPoint)";
}
//else
//{
// sql += " and CreatePerson='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserName + "'";
//}
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
sql += " and a.WorkPoint in (" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',') + ")";
//ParentId = SqlHelper.Organize_F_ParentId(NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode);
}
if (NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode != "admin")
{
sql = SqlHelper.OrganizeByVendor_F_ParentIdByCommint(sql, NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode);
}
else
{
sql += " GROUP BY POCode,CreateDateTime,e.ProjectCode,a.VenCode,d.VenName,ReleaseState,CreatePerson,a.Filename,a.uploadcomment ,a.SignBackStatus,a.WorkPoint ,a.EATTRIBUTE7,a.EATTRIBUTE8, a.EATTRIBUTE9,a.EATTRIBUTE10 ,a.EATTRIBUTE11 ,a.EATTRIBUTE12,a.BackComment";
}
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam);
}
/// <summary>
/// 子表查询
/// </summary>
/// <param name="queryJson"></param>
/// <param name="jqgridparam"></param>
/// <returns></returns>
public DataTable GetSubGridJson(string queryJson, ref Pagination jqgridparam)
{
DataTable dt = new DataTable();
//var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>();
string sql = @"SELECT a.Sequence,a.InvCode,b.INVNAME,b.INVSTD,b.InvUnit,a.Quantity,
CONVERT(NVARCHAR(50), a.PlanArriveDate,23) as PreArriveDate,CONVERT(NVARCHAR(50),a.ArriveDate,23) as ArriveDate,
CONVERT(NVARCHAR(50), a.DeliveryDate,23) as Free5,c.ProjectCode
FROM dbo.ICSPurchaseOrder a
LEFT JOIN dbo.ICSINVENTORY b ON a.InvCode=b.INVCODE AND a.WorkPoint=b.WorkPoint
LEFT JOIN dbo.ICSExtension c ON a.ExtensionID=c.id AND a.WorkPoint=c.WorkPoint
WHERE a.POCode='" + queryJson + "'and (isnull(a.Status,'')<>'关闭'and isnull(a.Status,'')<>'弃审')";
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam);
}
/// <summary>
/// 提交备注信息
/// </summary>
/// <param name="ReturnRemark"></param>
/// <param name="POCode"></param>
/// <returns></returns>
public int UpdatePOBackRemark(string ReturnRemark, string POCode)
{
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
string sql = string.Empty;
sql = @"UPDATE ICSPurchaseOrder SET uploadcomment= '{1}' WHERE POCode = '{0}'";
sql = string.Format(sql, POCode, ReturnRemark);
return SqlHelper.ExecuteNonQuery(sql);
}
/// <summary>
/// 采购人员确定订单回签
/// </summary>
/// <param name="ReturnRemark"></param>
/// <param name="POCode"></param>
/// <returns></returns>
public void POBackCommit(string queryJson)
{
try
{
ICSPO_PoMain[] list = JsonConvert.DeserializeObject<ICSPO_PoMain[]>(queryJson);
//string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
string sql = string.Empty;
string connString = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
SqlConnection conn = new System.Data.SqlClient.SqlConnection(connString);
conn.Open();
SqlTransaction sqlTran = conn.BeginTransaction();
SqlCommand cmd = new SqlCommand();
cmd.Transaction = sqlTran;
cmd.Connection = conn;
try
{
string UserCode = NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode;
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.Replace("'", "");
//string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
foreach (var obj in list)
{
sql = @"UPDATE ICSPurchaseOrder SET SignBackStatus= 3,MTIME=GETDATE() WHERE POCode =@POCode and @WorkPoint=@WorkPoint";
SqlParameter[] sp_Detail = {
new SqlParameter("@POCode",obj.POCode),
new SqlParameter("@WorkPoint",WorkPoint.TrimEnd(',')),
};
SqlCommandHelper.CmdExecuteNonQuery(sql, sp_Detail, cmd);
}
cmd.Transaction.Commit();
}
catch (Exception ex)
{
cmd.Transaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
conn.Dispose();
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
/// <summary>
/// 上传文件变更订单状态为确认中,新增上传次数
/// </summary>
/// <param name="PoCode"></param>
/// <param name="FileName"></param>
/// <param name="FilePath"></param>
/// <returns></returns>
public string UpLoadFile(string PoCode, string FileName, string FilePath, string ReturnRemark, string WorkPoint)
{
string msg = "";
try
{
int countRemak = UpdatePOBackRemark(ReturnRemark, PoCode);
if (countRemak <= 0)
{
msg = "上传失败";
}
//更新上传次数
string sqls = @"UPDATE dbo.ICSPurchaseOrder
SET uploadFrequency=ISNULL(uploadFrequency,0)+1
WHERE PoCode = '" + PoCode.TrimEnd(',') + "' and WorkPoint='" + WorkPoint + "'";
int counts = SqlHelper.ExecuteNonQuery(sqls);
if (counts <= 0)
msg = "上传失败";
string sql = @"UPDATE ICSPurchaseOrder SET Filename = '{1}',FilePath = '{2}',SignBackStatus=2 WHERE POCode = '{0}'";
sql = string.Format(sql, PoCode, FileName, FilePath);
int count = SqlHelper.ExecuteNonQuery(sql);
if (count <= 0)
msg = "上传失败";
}
catch (Exception ex)
{
msg = ex.Message.ToString();
}
return msg;
}
/// <summary>
/// 上传文件变更订单状态为确认中,新增上传次数
/// </summary>
/// <param name="PoCode"></param>
/// <param name="FileName"></param>
/// <param name="FilePath"></param>
/// <returns></returns>
public string UpLoadFileCommint(string PoCode, string FileName, string FilePath, string ReturnRemark, string WorkPoint)
{
string msg = "";
try
{
int countRemak = UpdatePOBackRemark(ReturnRemark, PoCode);
if (countRemak <= 0)
{
msg = "上传失败";
}
//更新上传次数
string sqls = @"UPDATE dbo.ICSPurchaseOrder
SET uploadFrequency=ISNULL(uploadFrequency,0)+1
WHERE PoCode = '" + PoCode.TrimEnd(',') + "' and WorkPoint='" + WorkPoint + "'";
int counts = SqlHelper.ExecuteNonQuery(sqls);
if (counts <= 0)
msg = "上传失败";
string sql = @"UPDATE ICSPurchaseOrder SET FileName = '{1}',FilePath = '{2}',SignBackStatus=3 WHERE POCode = '{0}'";
sql = string.Format(sql, PoCode, FileName, FilePath);
int count = SqlHelper.ExecuteNonQuery(sql);
if (count <= 0)
msg = "上传失败";
}
catch (Exception ex)
{
msg = ex.Message.ToString();
}
return msg;
}
public void BackCommit(string keyValue)
{
string sql = string.Empty;
try
{
string Muser = NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode;
string MuserName = NFine.Code.OperatorProvider.Provider.GetCurrent().UserName;
ICSPO_PoMain[] list = JsonConvert.DeserializeObject<ICSPO_PoMain[]>(keyValue);
string MailOpen = ConfigurationManager.ConnectionStrings["MailOpen"].ConnectionString;
//string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',');
string connString = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
SqlConnection conn = new System.Data.SqlClient.SqlConnection(connString);
conn.Open();
SqlTransaction sqlTran = conn.BeginTransaction();
SqlCommand cmd = new SqlCommand();
cmd.Transaction = sqlTran;
cmd.Connection = conn;
try
{
foreach (var obj in list)
{
sql = @" UPDATE ICSPurchaseOrder SET SignBackStatus='4',BackComment=@BackCommit WHERE POCODE=@POCODE";
SqlParameter[] sp_Detail = {
new SqlParameter("@POCODE",obj.POCode),
new SqlParameter("@BackCommit",obj.EATTRIBUTE6)
};
SqlCommandHelper.CmdExecuteNonQuery(sql, sp_Detail, cmd);
string sqlEmail = @"SELECT DISTINCT c.F_Email,b.VenName from ICSPurchaseOrder(NOLOCK) a
LEFT JOIN dbo.ICSVendor(NOLOCK) b ON a.VenCode=b.VenCode AND a.WorkPoint=b.WorkPoint
LEFT JOIN dbo.Sys_SRM_User(NOLOCK) c ON b.VenCode=c.F_VenCode AND b.WorkPoint=c.F_Location
Where PoCode='{0}'";
sqlEmail = string.Format(sqlEmail, obj.POCode);
DataTable dtEmail = SqlHelper.GetDataTableBySql(sqlEmail);
if (dtEmail.Rows.Count > 0)
{
for (int i = 0; i < dtEmail.Rows.Count; i++)
{
if (!string.IsNullOrWhiteSpace(dtEmail.Rows[i]["F_Email"].ToString()))
{
if (MailOpen == "true")
{
string SendHost = ConfigurationManager.ConnectionStrings["SendHost"].ConnectionString;
string StrSendPort = ConfigurationManager.ConnectionStrings["SendPort"].ConnectionString;
int SendPort = 25;
if (!string.IsNullOrEmpty(StrSendPort))
SendPort = Convert.ToInt32(ConfigurationManager.ConnectionStrings["SendPort"].ConnectionString);
string SendDisplayName = ConfigurationManager.ConnectionStrings["SendDisplayName"].ConnectionString;
string SendAddress = ConfigurationManager.ConnectionStrings["SendAddress"].ConnectionString;
string SendPassword = ConfigurationManager.ConnectionStrings["SendPassword"].ConnectionString;
string TOAddress = dtEmail.Rows[i]["F_Email"].ToString();
string[] Partint = TOAddress.Split(';');
if (!string.IsNullOrEmpty(TOAddress))
{
foreach (var p in Partint)
{
string CCAddress = "";
string Subject = "有来自华恒SRM平台信息";
bool isBodyHtml = false;
string F_RealName = dtEmail.Rows[i]["VenName"].ToString();
//string StarTime = dr["StarTime"].ToString();
string NowDate = DateTime.Now.GetDateTimeFormats('D')[0].ToString();
string body = "尊敬的" + F_RealName + ":";
body += " \r\n 你的采购订单订单:" + obj.POCode + "被回签确认退回,请前往系统查看详情!。";
body += "\r\n";
body += " 顺颂商祺!";
body += "\r\n";
body += " 华恒焊接(昆山)股份有限公司";
body += "\r\n";
body += " " + NowDate;
string StrConn = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
if (!string.IsNullOrEmpty(p.ToString()))
{
try
{
//MailHelper.SendEmail(StrConn, SendHost, SendPort, SendDisplayName, SendAddress, SendPassword, p.ToString(), CCAddress, Subject, isBodyHtml, body);
}
catch (Exception ex)
{
throw new Exception("供应商:" + F_RealName + "邮件发送失败! \r\n" + ex.Message);
}
}
}
}
}
}
}
}
}
cmd.Transaction.Commit();
}
catch (Exception ex)
{
cmd.Transaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
conn.Dispose();
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
}
}