private void ShowFreeAuthorizationLogOnRow(DataGridViewRow row, FreeAuthorizationLog log) { row.Tag = log; row.Cells["colLogDateTime"].Value = log.LogDateTime.ToString("yyyy-MM-dd HH:mm:ss"); row.Cells["colOperatorID"].Value = log.OperatorID; row.Cells["colCardID"].Value = log.CardID; row.Cells["colBeginDateTime"].Value = log.BeginDateTime.ToString("yyyy-MM-dd HH:mm:ss"); row.Cells["colEndDateTime"].Value = log.EndDateTime.ToString("yyyy-MM-dd HH:mm:ss"); row.Cells["colStationID"].Value = log.StationID; row.Cells["colInPark"].Value = log.InPark; row.Cells["colNotCheckOut"].Value = !log.CheckOut; row.Cells["colMemo"].Value = log.Memo; }
private void SaveAuthensToPark(List <string> records) { FrmProcessing frmP = new FrmProcessing(); Action action = delegate() { try { int success = 0; int fail = 0; FreeAuthorizationLogBll bll = new FreeAuthorizationLogBll(AppSettings.CurrentSetting.ParkConnect); foreach (string record in records) { Ralid.Park.POS.Model.FreeAuthorizationLog p = Ralid.Park.POS.Model.FreeAuthorizationLogSerializer.Deserialize(record); if (p != null) { FreeAuthorizationLog item = CreateFrom(p); CommandResult ret = bll.InsertRecordWithCheck(item); if (ret.Result == ResultCode.Successful) { success++; } else { fail++; } } else { fail++; } frmP.ShowProgress(string.Format(Resource1.FrmMain_ImportAuthenLog + " " + Resource1.FrmMain_Success + ":{0} " + Resource1.FrmMain_Fail + ":{1} " + Resource1.FrmMain_ImportTotal + ": {2}", success, fail, records.Count), (decimal)(success + fail) / records.Count); } ShowMessage(string.Format(Resource1.FrmMain_ImportAuthenLog + " " + Resource1.FrmMain_Success + ":{0} " + Resource1.FrmMain_Fail + ":{1} " + Resource1.FrmMain_ImportTotal + ": {2}", success, fail, records.Count), Color.Black); } catch (ThreadAbortException) { } catch (Exception ex) { frmP.ShowProgress(ex.Message, 1); ShowMessage(ex.Message, Color.Red); } }; Thread t = new Thread(new ThreadStart(action)); t.Start(); if (frmP.ShowDialog() != DialogResult.OK) { t.Abort(); } }
private FreeAuthorizationLog CreateFrom(Ralid.Park.POS.Model.FreeAuthorizationLog log) { FreeAuthorizationLog item = new FreeAuthorizationLog(); item.LogDateTime = log.LogDateTime; item.CardID = log.CardID; item.BeginDateTime = log.BeginDateTime; item.EndDateTime = log.EndDateTime; item.InPark = log.InPark; item.CheckOut = log.CheckOut; item.OperatorID = log.OperatorID; item.StationID = log.StationID; item.Memo = log.Memo; return(item); }
public CommandResult InsertRecordWithCheck(FreeAuthorizationLog info) { RecordSearchCondition searchCondition = new RecordSearchCondition(); searchCondition.RecordDateTimeRange = new DateTimeRange(info.LogDateTime, info.LogDateTime); searchCondition.CardID = info.CardID; List <FreeAuthorizationLog> check = provider.GetItems(searchCondition).QueryObjects; if (check == null || check.Count == 0) { return(provider.Insert(info)); } //已存在该记录,可认为插入成功 return(new CommandResult(ResultCode.Successful, string.Empty)); }
private FreeAuthorizationLog CreateFreeAuthorizationLog(CardInfo info) { FreeAuthorizationLog log = new FreeAuthorizationLog(); log.LogDateTime = DateTime.Now; log.CardID = info.CardID; log.BeginDateTime = info.LastDateTime; if (info.FreeDateTime.HasValue) { log.EndDateTime = info.FreeDateTime.Value; } log.InPark = info.IsInPark; log.CheckOut = info.HotelCheckOut; log.OperatorID = OperatorInfo.CurrentOperator.OperatorName; log.StationID = WorkStationInfo.CurrentStation.StationName; log.Memo = string.Empty; return(log); }
/// <summary> /// 免费授权 /// </summary> private void FreeAuthorization(CardInfo cardinfo) { bool offlineHandleCard = AppSettings.CurrentSetting.EnableWriteCard && cardinfo != null && !cardinfo.OnlineHandleWhenOfflineMode; CardBll _CardBll = new CardBll(AppSettings.CurrentSetting.ParkConnect); bool success = _CardBll.CardFreeAuthorizationWithStandby(_cardInfo, WorkStationInfo.CurrentStation.HasStandbyDatabase, AppSettings.CurrentSetting.CurrentStandbyConnect).Result == ResultCode.Successful; //写卡模式时需要将授权信息写入卡片扇区,并且只需要写入卡片成功就可以了 if (offlineHandleCard) { success = CardOperationManager.Instance.WriteCardLoop(cardinfo) == CardOperationResultCode.Success; if (!success) { //写入失败时,将数据库的卡片授权信息还原 _CardBll.CardFreeAuthorization(_OriginalCard); if (!string.IsNullOrEmpty(AppSettings.CurrentSetting.CurrentStandbyConnect)) { //还原备用数据库 CardBll standbyCardBll = new CardBll(AppSettings.CurrentSetting.CurrentStandbyConnect); standbyCardBll.CardFreeAuthorization(_OriginalCard); } } } if (success) { //插入授权记录 FreeAuthorizationLog log = CreateFreeAuthorizationLog(_cardInfo); FreeAuthorizationLogBll logBll = new FreeAuthorizationLogBll(AppSettings.CurrentSetting.ParkConnect); logBll.Insert(log); MessageBox.Show(Resource1.FrmHotelAuthorization_Authe + Resource1.Form_Success); ClearInput(); } else { MessageBox.Show(Resource1.FrmHotelAuthorization_Authe + Resource1.Form_Fail); } }
public CommandResult Delete(FreeAuthorizationLog info) { return(provider.Delete(info)); }
public CommandResult Insert(FreeAuthorizationLog info) { return(provider.Insert(info)); }