private void CheckNestAreaRepeatOut(InputAgs args, ResultAgs rst) { ParkTimeseries timeseries = null; string errorMsg = ""; if (args.NestAreaIORecord != null) { timeseries = ParkTimeseriesServices.GetTimeseriesesByIORecordID(args.AreadInfo.PKID, args.NestAreaIORecord.RecordID, out errorMsg); } if (timeseries != null) { args.Timeseries = timeseries; rst.InDate = args.Timeseries.EnterTime; rst.OutDate = args.Plateinfo.TriggerTime; rst.ResCode = ResultCode.OutOK; rst.InOutBaseCardType = BaseCarType.TempCar; } else if (args.CarTypeInfo.CarNoLike == YesOrNo.Yes)//是否模糊识别 { rst.ResCode = ResultCode.OnFindNo; rst.InOutBaseCardType = BaseCarType.TempCar; } else //重复出场判断 { if (args.CarTypeInfo.RepeatOut == YesOrNo.No && args.AreadInfo.NeedToll == YesOrNo.Yes) { rst.ResCode = ResultCode.RepeatOut; } else { rst.ResCode = ResultCode.OutOK; rst.InOutBaseCardType = BaseCarType.TempCar; } } }
public static ParkTimeseries AddTimeseries(ParkTimeseries mode, out string ErrorMessage) { if (mode == null) { throw new ArgumentNullException("mode"); } IParkTimeseries factory = ParkTimeseriesFactory.GetFactory(); return(factory.AddTimeseries(mode, out ErrorMessage)); }
public ParkTimeseries AddTimeseries(ParkTimeseries model, out string ErrorMessage) { ErrorMessage = ""; try { using (DbOperator dbOperator = ConnectionManager.CreateConnection()) { model.DataStatus = DataStatus.Normal; model.LastUpdateTime = DateTime.Now; model.HaveUpdate = SystemDefaultConfig.DataUpdateFlag; model.TimeseriesID = GuidGenerator.GetGuidString(); StringBuilder strSql = new StringBuilder(); strSql.Append("insert into ParkTimeseries(TimeseriesID,IORecordID,EnterImage,ExitImage,ParkingID,EnterTime,ExitTime,ExitGateID,EnterGateID,IsExit,LastUpdateTime,HaveUpdate,DataStatus,ReleaseType)"); strSql.Append(" values(@TimeseriesID,@IORecordID,@EnterImage,@ExitImage,@ParkingID,@EnterTime,@ExitTime,@ExitGateID,@EnterGateID,@IsExit,@LastUpdateTime,@HaveUpdate,@DataStatus,@ReleaseType);"); strSql.Append(" select * from ParkTimeseries where TimeseriesID=@TimeseriesID "); dbOperator.ClearParameters(); dbOperator.AddParameter("TimeseriesID", model.TimeseriesID); dbOperator.AddParameter("IORecordID", model.IORecordID); dbOperator.AddParameter("EnterImage", model.EnterImage); dbOperator.AddParameter("ExitImage", model.ExitImage); dbOperator.AddParameter("ParkingID", model.ParkingID); dbOperator.AddParameter("EnterTime", model.EnterTime); dbOperator.AddParameter("ExitTime", model.ExitTime); dbOperator.AddParameter("ExitGateID", model.ExitGateID); dbOperator.AddParameter("EnterGateID", model.EnterGateID); dbOperator.AddParameter("IsExit", model.IsExit); dbOperator.AddParameter("LastUpdateTime", model.LastUpdateTime); dbOperator.AddParameter("HaveUpdate", model.HaveUpdate); dbOperator.AddParameter("DataStatus", (int)model.DataStatus); dbOperator.AddParameter("ReleaseType", model.ReleaseType); using (DbDataReader reader = dbOperator.ExecuteReader(strSql.ToString())) { if (reader.Read()) { return(DataReaderToModel <ParkTimeseries> .ToModel(reader)); } } } } catch (Exception e) { ErrorMessage = e.Message; } return(null); }
private void CheckNestReaptIn(InputAgs args, ResultAgs rst) { ParkTimeseries timeseries = null; string errorMsg = ""; if (args.NestAreaIORecord != null)//月卡 VIP卡需要 { timeseries = ParkTimeseriesServices.GetTimeseriesesByIORecordID(args.AreadInfo.PKID, args.NestAreaIORecord.RecordID, out errorMsg); } if (args.CarTypeInfo.RepeatIn == YesOrNo.Yes && timeseries != null) { //删除入场记录 RemoveReaptInIorecord(args); timeseries.DataStatus = DataStatus.Delete; //SynchroService.UpLoadModle(timeseries); } else if (args.CarTypeInfo.RepeatIn != YesOrNo.Yes && timeseries != null) { rst.ResCode = ResultCode.RepeatIn; } }
public bool ModifyTimeseries(ParkTimeseries model, out string ErrorMessage) { ErrorMessage = ""; try { using (DbOperator dbOperator = ConnectionManager.CreateConnection()) { model.DataStatus = DataStatus.Normal; model.LastUpdateTime = DateTime.Now; model.HaveUpdate = SystemDefaultConfig.DataUpdateFlag; StringBuilder strSql = new StringBuilder(); strSql.Append(@"update ParkTimeseries set IORecordID=@IORecordID,EnterGateID=@EnterGateID,EnterImage=@EnterImage,EnterTime=@EnterTime,ExitGateID=@ExitGateID, ExitImage=@ExitImage,ExitTime=@ExitTime,HaveUpdate=@HaveUpdate,LastUpdateTime=@LastUpdateTime,IsExit=@IsExit, ParkingID=@ParkingID,ReleaseType=@ReleaseType"); strSql.Append(" where TimeseriesID=@TimeseriesID"); dbOperator.ClearParameters(); dbOperator.AddParameter("IORecordID", model.IORecordID); dbOperator.AddParameter("EnterGateID", model.EnterGateID); dbOperator.AddParameter("EnterImage", model.EnterImage); dbOperator.AddParameter("EnterTime", model.EnterTime); dbOperator.AddParameter("ExitGateID", model.ExitGateID); dbOperator.AddParameter("ExitImage", model.ExitImage); dbOperator.AddParameter("ExitTime", model.ExitTime); dbOperator.AddParameter("HaveUpdate", model.HaveUpdate); dbOperator.AddParameter("LastUpdateTime", model.LastUpdateTime); dbOperator.AddParameter("IsExit", model.IsExit); dbOperator.AddParameter("ParkingID", model.ParkingID); dbOperator.AddParameter("ReleaseType", model.ReleaseType); dbOperator.AddParameter("TimeseriesID", model.TimeseriesID); return(dbOperator.ExecuteNonQuery(strSql.ToString()) > 0); } } catch (Exception e) { ErrorMessage = e.Message; } return(false); }
/// <summary> /// 内场在场记录 /// </summary> /// <param name="args"></param> /// <param name="rst"></param> private void FindNestAreaIorecord(InputAgs args, ResultAgs rst) { string errorMsg = ""; ParkTimeseries timeseries = null; if (args.NestAreaIORecord != null) { timeseries = ParkTimeseriesServices.GetTimeseriesesByIORecordID(args.AreadInfo.PKID, args.NestAreaIORecord.RecordID, out errorMsg); } if (timeseries != null && !timeseries.IsExit) { args.Timeseries = timeseries; rst.InDate = args.Timeseries.EnterTime; rst.OutDate = args.Plateinfo.TriggerTime; rst.ResCode = ResultCode.OutOK; rst.InOutBaseCardType = BaseCarType.MonthlyRent; } else { if (args.CarTypeInfo.CarNoLike == YesOrNo.Yes) { rst.ResCode = ResultCode.OnFindNo; rst.InOutBaseCardType = BaseCarType.MonthlyRent; } else { if (args.CarTypeInfo.RepeatOut == YesOrNo.No) { rst.ResCode = ResultCode.RepeatOut; } else { rst.ResCode = ResultCode.OutOK; rst.InOutBaseCardType = BaseCarType.MonthlyRent; } } } }
private void RemoveReaptInTimeseries(ParkTimeseries args) { ParkTimeseriesServices.RemoveTimeseries(args.TimeseriesID); }
public List <ParkTimeseries> GetTimeseriesIORecordByLikeStrWhitPageTab(string parkingID, int pageSize, int pageIndex, List <string> cardTypeIDs, string likeStr, out int pageCount, out string ErrorMessage, int isExit = 0) { string strWhere = string.Format(" t.ParkingID='{0}' and t.DataStatus!=2 ", parkingID); if (isExit == 0 || isExit == 1) { strWhere = strWhere + " and t.Isexit=" + isExit; } if (!likeStr.IsEmpty()) { strWhere = string.Format("{0} and {1}", strWhere, likeStr); } if (cardTypeIDs != null && cardTypeIDs.Count > 0) { string cardids = ""; foreach (var item in cardTypeIDs) { if (item.IsEmpty()) { continue; } cardids += "'" + item + "',"; } if (!cardids.IsEmpty()) { cardids = cardids.Substring(0, cardids.Length - 1); strWhere = strWhere + " and i.CarTypeID in(" + cardids + ")"; } } ErrorMessage = ""; if (pageIndex < 1) { ErrorMessage = "pageIndex 从1开始"; } pageCount = 0; List <ParkTimeseries> modes = new List <ParkTimeseries>(); try { string tWhere = " 1=1 "; if (strWhere.IsEmpty()) { strWhere = tWhere; } string countSql = string.Format(@"Select count(t.ID) Count From ParkTimeseries t left join ParkIORecord i on t.IORecordID=i.RecordID WHERE {0} ", strWhere); string sql = string.Format(@"Select top {1} * From ParkTimeseries t left join ParkIORecord i on t.IORecordID=i.RecordID Where t.ID>=( Select Max(ID) From (Select top {0} t.ID From ParkTimeseries t left join ParkIORecord i on t.IORecordID=i.RecordID WHERE {2} Order By t.ID) As tmp ) and {2}; ", (pageIndex - 1) * pageSize + 1, pageSize, strWhere); using (DbOperator dbOperator = ConnectionManager.CreateReadConnection()) { using (DbDataReader reader = dbOperator.ExecuteReader(countSql.ToString())) { if (reader.Read()) { pageCount = reader[0].ToInt(); } else { return(null); } } } using (DbOperator dbOperator = ConnectionManager.CreateReadConnection()) { using (DbDataReader reader = dbOperator.ExecuteReader(sql.ToString())) { ParkTimeseries timeseries = null; ParkIORecord iorecord = null; while (reader.Read()) { timeseries = new ParkTimeseries(); iorecord = new ParkIORecord(); timeseries = DataReaderToModel <ParkTimeseries> .ToModel(reader); iorecord = DataReaderToModel <ParkIORecord> .ToModel(reader); timeseries.IORecord = iorecord; modes.Add(timeseries); } } } } catch (Exception e) { ErrorMessage = "服务异常!" + e.Message; } return(modes); }