using System; using System.Collections.Generic; using System.Linq; using System.Text; using BWP.B3Frameworks.BO; using BWP.B3Frameworks.BO.NamedValueTemplate; using BWP.B3Frameworks.Utils; using BWP.B3Sale.BL; using BWP.B3Sale.BO; using Forks.EnterpriseServices.BusinessInterfaces; using Forks.EnterpriseServices.DomainObjects2; using Forks.EnterpriseServices.DomainObjects2.DQuery; using Forks.EnterpriseServices.SqlDoms; using TSingSoft.WebPluginFramework.BIPlugins.BLEvents; using Forks.EnterpriseServices.BusinessInterfaces; using BWP.B3Frameworks.BL; namespace BWP.B3_YunKen.BLActions { public class CusrAcceptDoCheckSendWeixinMessage : IBLMethodAction { public string Description { get { return "【客户验收】审核时发送微信消息给{客户}和{销售人员}"; } } public void Execute(IDmoContext context, object customer, object parameter) { var dmo = customer as CustomerAccept; if (dmo == null) return; string empUserName; string cusUserName; if (dmo.Employee_ID != null) { empUserName = InnerBLUtil.GetDmoProperty(context.Session, "User_Name", new Tuple("Employee_ID", dmo.Employee_ID)); InsertExternalMessage(dmo, empUserName, context); } if (dmo.Customer_ID != null) { cusUserName = InnerBLUtil.GetDmoProperty(context.Session, "User_Name", new Tuple("Customer_ID", dmo.Customer_ID)); InsertExternalMessage(dmo, cusUserName, context); } } private void InsertExternalMessage(CustomerAccept accept, string userName, IDmoContext context) { var message = new WeixinMessage(); message.Title = "客户验收单No."+accept.ID; message.TargetID = accept.ID; message.Type = "耘垦客户验收"; var url = WeixinMessageUtil.NewWeixinMessageUrl(context.Session, message); var externalMessageBL = BIFactory.Create(context); var externalMessage = new ExternalMessage(); externalMessage.Type = ExternalMessageType.微信; externalMessage.Receiver = userName; externalMessage.Url = url; externalMessage.Subject = message.Title; externalMessageBL.Insert(externalMessage); } public IList Features { get { return new List(); } } public string Name { get { return "B3_YunKen.【客户验收】审核时发送微信消息给{客户}和{销售人员}"; } } } }