public async Task <ReturnedSaveFuncInfo> SaveAsync(SqlTransaction tr = null) { var res = new ReturnedSaveFuncInfo(); var autoTran = tr == null; SqlConnection cn = null; try { if (autoTran) { cn = new SqlConnection(Cache.ConnectionString); await cn.OpenAsync(); tr = cn.BeginTransaction(); } res.AddReturnedValue(await CheckValidationAsync()); if (res.HasError) { return(res); } res.AddReturnedValue(await SaveTafsilAsync(tr)); if (res.HasError) { return(res); } if (TellList?.Count > 0) { res.AddReturnedValue(await SaveMobileAsync(tr)); if (res.HasError) { return(res); } } if (BankList?.Count > 0) { res.AddReturnedValue(await SaveBankAccountAsync(tr)); if (res.HasError) { return(res); } } res.AddReturnedValue(await UnitOfWork.Peoples.SaveAsync(this, tr)); if (res.HasError) { return(res); } var action = IsModified ? EnLogAction.Update : EnLogAction.Insert; res.AddReturnedValue(await UserLogBussines.SaveAsync(action, EnLogPart.Peoples, tr)); if (res.HasError) { return(res); } if (Cache.IsSendToServer) { _ = Task.Run(() => WebPeople.SaveAsync(this)); } } catch (Exception ex) { WebErrorLog.ErrorInstence.StartErrorLog(ex); res.AddReturnedValue(ex); } finally { if (autoTran) { res.AddReturnedValue(tr.TransactionDestiny(res.HasError)); res.AddReturnedValue(cn.CloseConnection()); } } return(res); }
private static async Task StartSendToServerAsync() { try { var list = await TempBussines.GetAllAsync(); while (true) { if (list == null || list.Count <= 0) { await Task.Delay(2000); continue; } foreach (var item in list) { switch (item.Type) { case EnTemp.States: var states = await StatesBussines.GetAsync(item.ObjectGuid); if (states != null) { await WebStates.SaveAsync(states); } break; case EnTemp.Cities: var city = await CitiesBussines.GetAsync(item.ObjectGuid); if (city != null) { await WebCity.SaveAsync(city); } break; case EnTemp.Region: var region = await RegionsBussines.GetAsync(item.ObjectGuid); if (region != null) { await WebRegion.SaveAsync(region); } break; case EnTemp.Users: var user = await UserBussines.GetAsync(item.ObjectGuid); if (user != null) { await WebUser.SaveAsync(user); } break; case EnTemp.PeopleGroups: var pg = await PeopleGroupBussines.GetAsync(item.ObjectGuid); if (pg != null) { await WebPeopleGroup.SaveAsync(pg); } break; case EnTemp.Peoples: var p = await PeoplesBussines.GetAsync(item.ObjectGuid); if (p != null) { await WebPeople.SaveAsync(p); } break; case EnTemp.BuildingAccountType: var acc = await BuildingAccountTypeBussines.GetAsync(item.ObjectGuid); if (acc != null) { await WebBuildingAccountType.SaveAsync(acc); } break; case EnTemp.BuildingCondition: var co = await BuildingConditionBussines.GetAsync(item.ObjectGuid); if (co != null) { await WebBuildingCondition.SaveAsync(co); } break; case EnTemp.BuildingType: var type = await BuildingTypeBussines.GetAsync(item.ObjectGuid); if (type != null) { await WebBuildingType.SaveAsync(type); } break; case EnTemp.BuildingView: var view = await BuildingViewBussines.GetAsync(item.ObjectGuid); if (view != null) { await WebBuildingView.SaveAsync(view); } break; case EnTemp.DocumentType: var doc = await DocumentTypeBussines.GetAsync(item.ObjectGuid); if (doc != null) { await WebDocumentType.SaveAsync(doc); } break; case EnTemp.FloorCover: var fc = await FloorCoverBussines.GetAsync(item.ObjectGuid); if (fc != null) { await WebFloorCover.SaveAsync(fc); } break; case EnTemp.KitchenService: var ks = await KitchenServiceBussines.GetAsync(item.ObjectGuid); if (ks != null) { await WebKitchenService.SaveAsync(ks); } break; case EnTemp.RentalAuthority: var ra = await RentalAuthorityBussines.GetAsync(item.ObjectGuid); if (ra != null) { await WebRental.SaveAsync(ra); } break; case EnTemp.BuildingOptions: var o = await BuildingOptionsBussines.GetAsync(item.ObjectGuid); if (o != null) { await WebBuildingOptions.SaveAsync(o); } break; case EnTemp.Building: var bu = await BuildingBussines.GetAsync(item.ObjectGuid); if (bu != null) { await WebBuilding.SaveAsync(bu, Application.StartupPath); } break; case EnTemp.Contract: var con = await ContractBussines.GetAsync(item.ObjectGuid); if (con != null) { await WebContract.SaveAsync(con); } break; case EnTemp.Requests: var req = await BuildingRequestBussines.GetAsync(item.ObjectGuid); if (req != null) { await WebBuildingRequest.SaveAsync(req); } break; case EnTemp.Reception: var rec = await ReceptionBussines.GetAsync(item.ObjectGuid); if (rec != null) { await WebReception.SaveAsync(rec); } break; case EnTemp.Pardakht: var pa = await PardakhtBussines.GetAsync(item.ObjectGuid); if (pa != null) { await WebPardakht.SaveAsync(pa); } break; case EnTemp.BuildingRelatedOptions: var re = await BuildingRelatedOptionsBussines.GetAsync(item.ObjectGuid); if (re != null) { await WebBuildingRelatedOptions.SaveAsync(re); } break; case EnTemp.RequestRegions: var rr = await BuildingRequestRegionBussines.GetAsync(item.ObjectGuid); if (rr != null) { await WebBuildingRequestRegion.SaveAsync(rr); } break; case EnTemp.PhoneBook: var ph = await PhoneBookBussines.GetAsync(item.ObjectGuid); if (ph != null) { await WebPhoneBook.SaveAsync(ph); } break; case EnTemp.Advisor: var ad = await AdvisorBussines.GetAsync(item.ObjectGuid); if (ad != null) { await WebAdvisor.SaveAsync(ad); } break; case EnTemp.Bank: var ba = await BankBussines.GetAsync(item.ObjectGuid); if (ba != null) { await WebBank.SaveAsync(ba); } break; case EnTemp.Kol: var kol = await KolBussines.GetAsync(item.ObjectGuid); if (kol != null) { await WebKol.SaveAsync(kol); } break; case EnTemp.Moein: var moein = await MoeinBussines.GetAsync(item.ObjectGuid); if (moein != null) { await WebMoein.SaveAsync(moein); } break; case EnTemp.Tafsil: var tafsil = await TafsilBussines.GetAsync(item.ObjectGuid); if (tafsil != null) { await WebTafsil.SaveAsync(tafsil); } break; case EnTemp.Sanad: var sa = await SanadBussines.GetAsync(item.ObjectGuid); if (sa != null) { await WebSanad.SaveAsync(sa); } break; case EnTemp.SanadDetail: var saD = await SanadDetailBussines.GetAsync(item.ObjectGuid); if (saD != null) { await WebSanadDetail.SaveAsync(saD); } break; } await item.RemoveAsync(); } await Task.Delay(2000); list = await TempBussines.GetAllAsync(); } } catch (Exception ex) { WebErrorLog.ErrorInstence.StartErrorLog(ex); } }
public async Task <ReturnedSaveFuncInfo> ChangeStatusAsync(bool status, SqlTransaction tr = null) { var res = new ReturnedSaveFuncInfo(); var autoTran = tr == null; SqlConnection cn = null; try { if (autoTran) { cn = new SqlConnection(Cache.ConnectionString); await cn.OpenAsync(); tr = cn.BeginTransaction(); } var tafsil = await TafsilBussines.GetAsync(Guid); if (tafsil == null) { res.AddError("شخص انتخاب شده معتبر نمی باشد"); return(res); } res.AddReturnedValue(await tafsil.ChangeStatusAsync(status, tr)); if (res.HasError) { return(res); } res.AddReturnedValue(await PhoneBookBussines.ChangeStatusAsync(Guid, status, tr)); if (res.HasError) { return(res); } res.AddReturnedValue(await UnitOfWork.Peoples.ChangeStatusAsync(this, status, tr)); if (res.HasError) { return(res); } var action = status ? EnLogAction.Enable : EnLogAction.Delete; res.AddReturnedValue(await UserLogBussines.SaveAsync(action, EnLogPart.Peoples, tr)); if (res.HasError) { return(res); } if (Cache.IsSendToServer) { _ = Task.Run(() => WebPeople.SaveAsync(this)); } } catch (Exception ex) { WebErrorLog.ErrorInstence.StartErrorLog(ex); res.AddReturnedValue(ex); } finally { if (autoTran) { res.AddReturnedValue(tr.TransactionDestiny(res.HasError)); res.AddReturnedValue(cn.CloseConnection()); } } return(res); }
private async Task ResendDataToHost() { try { if (chbState.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebStates.SaveAsync(await StatesBussines.GetAllAsync(_token.Token)); } if (chbCity.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebCity.SaveAsync(await CitiesBussines.GetAllAsync(_token.Token)); } if (chbRegion.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebRegion.SaveAsync(await RegionsBussines.GetAllAsync(_token.Token)); } if (chbUsers.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebUser.SaveAsync(await UserBussines.GetAllAsync(_token.Token)); } if (chbPeopleGroup.Checked) { await WebPeopleGroup.SaveAsync(await PeopleGroupBussines.GetAllAsync()); } if (chbPeople.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebPeople.SaveAsync(await PeoplesBussines.GetAllAsync(_token.Token)); } if (chbAccountType.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuildingAccountType.SaveAsync(await BuildingAccountTypeBussines.GetAllAsync(_token.Token)); } if (chbCondition.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuildingCondition.SaveAsync(await BuildingConditionBussines.GetAllAsync(_token.Token)); } if (chbType.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuildingType.SaveAsync(await BuildingTypeBussines.GetAllAsync(_token.Token)); } if (chbView.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuildingView.SaveAsync(await BuildingViewBussines.GetAllAsync(_token.Token)); } if (chbDocType.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebDocumentType.SaveAsync(await DocumentTypeBussines.GetAllAsync(_token.Token)); } if (chbFloor.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebFloorCover.SaveAsync(await FloorCoverBussines.GetAllAsync(_token.Token)); } if (chbKitchen.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebKitchenService.SaveAsync(await KitchenServiceBussines.GetAllAsync(_token.Token)); } if (chbRental.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebRental.SaveAsync(await RentalAuthorityBussines.GetAllAsync(_token.Token)); } if (chbOptions.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuildingOptions.SaveAsync(await BuildingOptionsBussines.GetAllAsync(_token.Token)); } if (chbBuilding.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuilding.SaveAsync(await BuildingBussines.GetAllAsync(_token.Token), Application.StartupPath); } if (chbRequest.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBuildingRequest.SaveAsync(await BuildingRequestBussines.GetAllAsync(_token.Token)); } if (chbContract.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebContract.SaveAsync(await ContractBussines.GetAllAsync(_token.Token)); } if (chbReception.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebReception.SaveAsync(await ReceptionBussines.GetAllAsync(_token.Token)); } if (chbPardakht.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebPardakht.SaveAsync(await PardakhtBussines.GetAllAsync(_token.Token)); } if (chbAdvisor.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebAdvisor.SaveAsync(await AdvisorBussines.GetAllAsync(_token.Token)); } if (chbBank.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebBank.SaveAsync(await BankBussines.GetAllAsync(_token.Token)); } if (chbKol.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebKol.SaveAsync(await KolBussines.GetAllAsync(_token.Token)); } if (chbMoein.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebMoein.SaveAsync(await MoeinBussines.GetAllAsync(_token.Token)); } if (chbTafsil.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebTafsil.SaveAsync(await TafsilBussines.GetAllAsync(_token.Token)); } if (chbSanad.Checked) { _token?.Cancel(); _token = new CancellationTokenSource(); await WebSanad.SaveAsync(await SanadBussines.GetAllAsync(_token.Token)); } Invoke(new MethodInvoker(() => MessageBox.Show("انتقال داده ها به سرور با موفقیت انجام شد"))); } catch (Exception ex) { WebErrorLog.ErrorInstence.StartErrorLog(ex); } finally { Invoke(new MethodInvoker(() => { btnSend.Enabled = true; Cursor = Cursors.Default; })); } }