public bool SendMessageToClient(MessageSocketSession session, Model.MessageBodyModel model) { try { string xml = Careysoft.Basic.Public.ObjectSerializer.InstancesToXML <Model.MessageBodyModel>(model); xml = Careysoft.Basic.Public.DES.Encrypt(xml, session.Cookies["PrivateKey"]); Model.MessageModel msgModel = new Model.MessageModel(Model.EnumCommand.MessagePoint, xml); session.Send(msgModel.ToString()); return(true); } catch (Exception e) { } return(false); }
public void SendWeiXinMessage(string userId, string message) { Model.MessageBodyModel modelBody = new Model.MessageBodyModel(); modelBody.Header.TargetCode = userId; modelBody.Header.TagetType = Model.EnumClientType.WeChat; modelBody.Header.SourceCode = m_ClientCode; modelBody.Header.MessageType = Model.EnumMessageType.Point; modelBody.MessageContentType = Model.EnumMessageContentType.Text; modelBody.MessageContent = message; string body = Careysoft.Basic.Public.ObjectSerializer.InstancesToXML <Model.MessageBodyModel>(modelBody); body = Careysoft.Basic.Public.DES.Encrypt(body, m_PrivateKey); Model.MessageModel model = new Model.MessageModel(Model.EnumCommand.MessagePoint, body); m_WebSocketClient.Send(model.ToString()); }
void m_WebSocketClient_MessageReceived(object sender, MessageReceivedEventArgs e) { Model.MessageModel model = new Model.MessageModel(e.Message); switch (model.Command) { case Model.EnumCommand.AuthQuestion: m_WebSocketClient.Send(String.Format("{0} {1}${2}", Model.EnumCommand.AuthUser.ToString(), m_ClientCode, m_ClientPass)); break; case Model.EnumCommand.AuthAccept: m_Logined = true; m_PrivateKey = Careysoft.Basic.Public.DES.Decrypt(model.Body, DateTime.Now.AddDays(-1).ToString("yyyyMMdd")); break; case Model.EnumCommand.MessagePoint: string body = model.Body; body = Careysoft.Basic.Public.DES.Decrypt(body, m_PrivateKey); Model.MessageBodyModel msgModel = Careysoft.Basic.Public.ObjectSerializer.Xml16ToInstances <Model.MessageBodyModel>(body); break; } }
/// <summary> /// PDA用户登录 /// </summary> /// <param name="jsondata"></param> /// <returns></returns> public async Task <MessageModel <string> > Login(LoginParam jsondata) { MessageModel <string> message = new Model.MessageModel <string>(); //检验设备和工序是否对应 if (jsondata.deviceNo.Substring(0, 1) == "Z" && jsondata.groupName.Substring(0, 2) != "正极") { message.success = false; message.msg = "正极设备号不能登陆负极项目"; return(message); } if (jsondata.deviceNo.Substring(0, 1) == "F" && jsondata.groupName.Substring(0, 2) != "负极") { message.success = false; message.msg = "负极设备号不能登陆正极项目"; return(message); } if (jsondata.deviceNo.Substring(2, 1) == "C" && jsondata.groupName.Substring(0, 2) != "正极") { message.success = false; message.msg = "正极设备号不能登陆负极项目"; return(message); } if (jsondata.deviceNo.Substring(2, 1) == "A" && jsondata.groupName.Substring(0, 2) != "负极") { message.success = false; message.msg = "负极设备号不能登陆正极项目"; return(message); } AgitationLoad alModel = new AgitationLoad(); alModel = _mapper.Map <AgitationLoad>(jsondata); var result1 = await _dal.GlueLoad(alModel); if (result1.Count <= 0) { return(message); } if (result1[0].work_stationname.IndexOf(jsondata.groupName.Substring(jsondata.groupName.Length - 2, 2)) == -1) { message.success = false; message.msg = $"该设备号不是【{jsondata.groupName}】设备号,不允许操作"; return(message); } //检查制令单是否有效 var result = await base.SqlQuery <CheckNo_Login>(@" select s.project_id, (select distinct p.cell_model from t_co_package p where p.packagenumber = @packagenumber) cell_model from t_pm_project_base s, t_pm_mo_base n where n.project_id = s.project_base_id and n.close_flag in (2, 4) and n.mo_number = @packagenumber", new { packagenumber = jsondata.packageNo }); if (result.Count <= 0) { message.success = false; message.msg = "制令单号没有上线或者不存在!"; return(message); } string res = await pmes.CheckUserDoAsync(jsondata.username, jsondata.password, jsondata.deviceNo); if (res.ToUpper() != "TRUE") { message.success = false; message.msg = res; return(message); } else { message.success = true; message.msg = "登录成功"; } //message.response = jsondata; return(message); }