/// <summary> /// 新增(传入事务处理) /// </summary> /// <param name="p_BE">要新增的实体</param> /// <param name="sqlTrans">事务类</param> public void RAdd(BaseEntity p_BE, BaseEntity[] p_BE2, IDBTransAccess sqlTrans) { try { this.CheckCorrect(p_BE); MSGMessage entity = (MSGMessage)p_BE; //string sql = "SELECT FormNo FROM SMS_MSGInput WHERE FormNo=" + SysString.ToDBString(entity.FormNo); //DataTable dt = sqlTrans.Fill(sql); //if (dt.Rows.Count > 0) //{ // throw new BaseException("单号已存在,请重新生成"); //} MSGMessageCtl control = new MSGMessageCtl(sqlTrans); entity.ID = (int)EntityIDTable.GetID((long)SysEntity.SMS_MSGMessage, sqlTrans); control.AddNew(entity); for (int i = 0; i < p_BE2.Length; i++) { MSGMessageDtsRule rule = new MSGMessageDtsRule(); MSGMessageDts entityDts = (MSGMessageDts)p_BE2[i]; entityDts.MainID = entity.ID; entityDts.Seq = i + 1; rule.RAdd(entityDts, sqlTrans); } //FormNoControlRule rulest = new FormNoControlRule(); //rulest.RAddSort((int)FormNoControlEnum.短信输入单号, sqlTrans); } catch (BaseException) { throw; } catch (Exception E) { throw new BaseException(E.Message); } }
/// <summary> /// 获得实体 /// </summary> /// <returns></returns> private MSGMessage EntityGet() { MSGMessage entity = new MSGMessage(); entity.ID = HTDataID; return(entity); }
/// <summary> /// 删除 /// </summary> /// <param name="p_Entity">实体类</param> /// <returns>操作影响的记录行数</returns> public override int Delete(BaseEntity p_Entity) { try { MSGMessage MasterEntity = (MSGMessage)p_Entity; if (MasterEntity.ID == 0) { return(0); } //删除主表数据 string Sql = ""; Sql = "DELETE FROM SMS_MSGMessage WHERE " + "ID=" + SysString.ToDBString(MasterEntity.ID); //执行 int AffectedRows = 0; if (!this.sqlTransFlag) { AffectedRows = this.ExecuteNonQuery(Sql); } else { AffectedRows = sqlTrans.ExecuteNonQuery(Sql); } return(AffectedRows); } catch (BaseException E) { throw new BaseException(E.Message, E); } catch (Exception E) { throw new BaseException(FrameWorkMessage.GetAlertMessage((int)Message.CommonDBDelete), E); } }
/// <summary> /// 删除 /// </summary> public override void EntityDelete() { MSGMessageRule rule = new MSGMessageRule(); MSGMessage entity = EntityGet(); rule.RDelete(entity); }
/// <summary> /// 设置 /// </summary> public override void EntitySet() { MSGMessage entity = new MSGMessage(); entity.ID = HTDataID; bool findFlag = entity.SelectByID(); txtContext.Text = entity.Context.ToString(); //txtMesPhone.Text = entity.MesPhone.ToString(); //txtMesMakeOPID.Text = entity.MesMakeOPID.ToString(); txtTargetOPID.Text = entity.TargetOPID.ToString(); txtMesTime.DateTime = entity.MesTime; //txtMSID.Text = entity.MSID.ToString(); string sql = "SELECT * FROM SMS_MSGMain WHERE DID=" + SysString.ToDBString(HTDataID); sql += " AND MSGSourceID=" + SysString.ToDBString((int)EnumMSGSource.自定义); DataTable dt = SysUtils.Fill(sql); if (dt.Rows.Count > 0) { lbSendShow.Text = "已发送"; } else { lbSendShow.Text = "未发送"; } if (!findFlag) { } BindGridDts(); }
/// <summary> /// 修改 /// </summary> /// <param name="p_Entity">实体类</param> /// <returns>操作影响的记录行数</returns> public override int Update(BaseEntity p_Entity) { try { MSGMessage MasterEntity = (MSGMessage)p_Entity; if (MasterEntity.ID == 0) { return(0); } //更新主表数据 StringBuilder UpdateBuilder = new StringBuilder(); UpdateBuilder.Append("UPDATE SMS_MSGMessage SET "); UpdateBuilder.Append(" ID=" + SysString.ToDBString(MasterEntity.ID) + ","); UpdateBuilder.Append(" Context=" + SysString.ToDBString(MasterEntity.Context) + ","); UpdateBuilder.Append(" MesPhone=" + SysString.ToDBString(MasterEntity.MesPhone) + ","); UpdateBuilder.Append(" MesMakeOPID=" + SysString.ToDBString(MasterEntity.MesMakeOPID) + ","); UpdateBuilder.Append(" TargetOPID=" + SysString.ToDBString(MasterEntity.TargetOPID) + ","); if (MasterEntity.MesTime != SystemConfiguration.DateTimeDefaultValue) { UpdateBuilder.Append(" MesTime=" + SysString.ToDBString(MasterEntity.MesTime.ToString("yyyy-MM-dd HH:mm:ss")) + ","); } else { UpdateBuilder.Append(" MesTime=null,"); } UpdateBuilder.Append(" MSID=" + SysString.ToDBString(MasterEntity.MSID) + ","); UpdateBuilder.Append(" SubmitFlag=" + SysString.ToDBString(MasterEntity.SubmitFlag) + ","); UpdateBuilder.Append(" DelFlag=" + SysString.ToDBString(MasterEntity.DelFlag)); UpdateBuilder.Append(" WHERE " + "ID=" + SysString.ToDBString(MasterEntity.ID)); //执行 int AffectedRows = 0; if (!this.sqlTransFlag) { AffectedRows = this.ExecuteNonQuery(UpdateBuilder.ToString()); } else { AffectedRows = sqlTrans.ExecuteNonQuery(UpdateBuilder.ToString()); } return(AffectedRows); } catch (BaseException E) { throw new BaseException(E.Message, E); } catch (Exception E) { throw new BaseException(FrameWorkMessage.GetAlertMessage((int)Message.CommonDBUpdate), E); } }
/// <summary> /// 修改 /// </summary> public override void EntityUpdate() { MSGMessageRule rule = new MSGMessageRule(); MSGMessage entity = EntityGet(); MSGMessageDts[] entitydts = EntityDtsGet(); //entity.SubmitFlag = this.HTSubmitFlagInsertGet(); rule.RUpdate(entity, entitydts); }
/// <summary> /// 新增 /// </summary> public override int EntityAdd() { MSGMessageRule rule = new MSGMessageRule(); MSGMessage entity = EntityGet(); MSGMessageDts[] entitydts = EntityDtsGet(); //entity.SubmitFlag = this.HTSubmitFlagInsertGet(); rule.RAdd(entity, entitydts); return(entity.ID); }
/// <summary> /// 获得实体 /// </summary> /// <returns></returns> private MSGMessage EntityGet() { MSGMessage entity = new MSGMessage(); entity.ID = HTDataID; entity.SelectByID(); entity.Context = txtContext.Text.Trim(); //entity.MesPhone = txtMesPhone.Text.Trim(); //entity.MesMakeOPID = txtMesMakeOPID.Text.Trim(); entity.TargetOPID = txtTargetOPID.Text.Trim(); entity.MesTime = txtMesTime.DateTime.Date; //entity.MSID = SysConvert.ToInt32(txtMSID.Text.Trim()); return(entity); }
/// <summary> /// 删除 /// </summary> /// <param name="p_BE">要删除的实体</param> /// <param name="sqlTrans">事务类</param> public void RDelete(BaseEntity p_BE, IDBTransAccess sqlTrans) { try { this.CheckCorrect(p_BE); MSGMessage entity = (MSGMessage)p_BE; MSGMessageCtl control = new MSGMessageCtl(sqlTrans); control.Delete(entity); } catch (BaseException) { throw; } catch (Exception E) { throw new BaseException(E.Message); } }
/// <summary> /// 新增(传入事务处理) /// </summary> /// <param name="p_BE">要新增的实体</param> /// <param name="sqlTrans">事务类</param> public void RAdd(BaseEntity p_BE, IDBTransAccess sqlTrans) { try { this.CheckCorrect(p_BE); MSGMessage entity = (MSGMessage)p_BE; MSGMessageCtl control = new MSGMessageCtl(sqlTrans); entity.ID = (int)EntityIDTable.GetID((long)SysEntity.SMS_MSGMessage, sqlTrans); control.AddNew(entity); } catch (BaseException) { throw; } catch (Exception E) { throw new BaseException(E.Message); } }
/// <summary> /// 检查将要操作的数据是否符合业务规则 /// </summary> /// <param name="p_BE"></param> private void CheckCorrect(BaseEntity p_BE) { MSGMessage entity = (MSGMessage)p_BE; }
public void Receive(object client) { NetworkStream clientStream = Client.GetStream(); byte[] message = new byte[8192]; int bytesRead; int errorCount = 0; double firstErrorTick = 0; double nowTicks = 0; while (true) { //System.Threading.Thread.Sleep(Program.Random.Next(50, 200)); bytesRead = 0; try { //blocks until a client sends a message bytesRead = clientStream.Read(message, 0, 8192); } catch { //a socket error has occured break; } if (bytesRead == 0) { //the client has disconnected from the server break; } //message has successfully been received string info = ""; try { decoder.PushMsg(Encoding.Unicode.GetString(message, 0, bytesRead)); //encoder.GetString(message, 0, bytesRead)); info = decoder.GetMsg(); while (info != null) { //System.Console.WriteLine(info); Message msg = Message.Decode(info); if (msg is MSGPlayer) { ((MSGPlayer)msg).HandleMsg(this); } else { msg.HandleMsg(); } info = decoder.GetMsg(); } } catch (MultiPlayerError) { break; } catch (SameNameError) { Client.Close(); thread.Abort(); } catch (Exception) { nowTicks = MPManager.Simulator.GameTime; if (firstErrorTick == 0) { firstErrorTick = nowTicks; errorCount = 1; } if (errorCount >= 5 && nowTicks - firstErrorTick < 10) //5 errors last 10 seconds { MSGMessage emsg = new MSGMessage(this.Username, "Error", "Too many errors received from you in a short period of time."); MPManager.BroadCast(emsg.ToString()); break; } else if (errorCount < 5) { errorCount++; } else { firstErrorTick = nowTicks; errorCount = 0; } //System.Console.WriteLine(e.Message + info); } } System.Console.WriteLine("{0} quit", this.Username); if (MPManager.Simulator.Confirmer != null) { MPManager.Simulator.Confirmer.Information(MPManager.Catalog.GetStringFmt("{0} quit.", this.Username)); } Client.Close(); if (this.Train != null && this.status != Status.Removed) //remember the location of the train in case the player comes back later, if he is not removed by the dispatcher { if (!MPManager.Instance().lostPlayer.ContainsKey(this.Username)) { MPManager.Instance().lostPlayer.Add(this.Username, this); } this.quitTime = MPManager.Simulator.GameTime; this.Train.SpeedMpS = 0.0f; this.status = Status.Quit; } MPManager.Instance().AddRemovedPlayer(this); //add this player to be removed MPManager.BroadCast((new MSGQuit(this.Username)).ToString()); thread.Abort(); }
/// <summary> /// 新增 /// </summary> /// <param name="p_Entity">实体类</param> /// <returns>操作影响的记录行数</returns> public override int AddNew(BaseEntity p_Entity) { try { MSGMessage MasterEntity = (MSGMessage)p_Entity; if (MasterEntity.ID == 0) { return(0); } //新增主表数据 StringBuilder MasterField = new StringBuilder(); StringBuilder MasterValue = new StringBuilder(); MasterField.Append("INSERT INTO SMS_MSGMessage("); MasterValue.Append(" VALUES("); MasterField.Append("ID" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.ID) + ","); MasterField.Append("Context" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.Context) + ","); MasterField.Append("MesPhone" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.MesPhone) + ","); MasterField.Append("MesMakeOPID" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.MesMakeOPID) + ","); MasterField.Append("TargetOPID" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.TargetOPID) + ","); MasterField.Append("MesTime" + ","); if (MasterEntity.MesTime != SystemConfiguration.DateTimeDefaultValue) { MasterValue.Append(SysString.ToDBString(MasterEntity.MesTime.ToString("yyyy-MM-dd HH:mm:ss")) + ","); } else { MasterValue.Append("null,"); } MasterField.Append("MSID" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.MSID) + ","); MasterField.Append("SubmitFlag" + ","); MasterValue.Append(SysString.ToDBString(MasterEntity.SubmitFlag) + ","); MasterField.Append("DelFlag" + ")"); MasterValue.Append(SysString.ToDBString(MasterEntity.DelFlag) + ")"); //执行 int AffectedRows = 0; if (!this.sqlTransFlag) { AffectedRows = this.ExecuteNonQuery(MasterField.Append(MasterValue.ToString()).ToString()); } else { AffectedRows = sqlTrans.ExecuteNonQuery(MasterField.Append(MasterValue.ToString()).ToString()); } return(AffectedRows); } catch (BaseException E) { throw new BaseException(E.Message, E); } catch (Exception E) { throw new BaseException(FrameWorkMessage.GetAlertMessage((int)Message.CommonDBInsert), E); } }