private void UpdateWorker() { PersonProxy workerToUpdate = new PersonProxy(); workerToUpdate.ID = int.Parse(dataGridView1.CurrentRow.Cells["PersonId"].Value.ToString()); workerToUpdate.LastName = dataGridView1.CurrentRow.Cells["PersonLastName"].Value.ToString(); workerToUpdate.FirstName = dataGridView1.CurrentRow.Cells["PersonFirstName"].Value.ToString(); workerToUpdate.Patronymic = dataGridView1.CurrentRow.Cells["PersonPatronymic"].Value.ToString(); switch (dataGridView1.CurrentRow.Cells["PersonGender"].Value.ToString()) { case "Муж": { workerToUpdate.Gender = true; break; } case "Жен": { workerToUpdate.Gender = false; break; } } workerToUpdate.BirthDate = DateTime.Parse(dataGridView1.CurrentRow.Cells["PersonBirthDate"].Value.ToString()); WorkerInfoForm workerInfo = new WorkerInfoForm(workerToUpdate, true); //workerInfo.MdiParent = this.MdiParent; workerInfo.Text = "Редактирование сотрудника"; if (workerInfo.ShowDialog() == DialogResult.OK) { FillDataGridView(); } }
/// <summary> /// Сохранение введеной смены /// </summary> private void SetWorkedTimeToTimetable() { //проходим по каждой записи //foreach (DataGridViewRow row in dataGridView1.Rows) //{ object rowValue = dataGridView1.CurrentRow.Cells[0].Value; //ТН работника if (rowValue != null) { Person person = PersonProxy.SearchPersonById(int.Parse(rowValue.ToString())); //текущий работник Dictionary <DateTime, string> timeWorked = new Dictionary <DateTime, string>(); //пара Дата-Время for (int i = 2; i < dataGridView1.ColumnCount - 1; i++) { object timeValue = dataGridView1.CurrentRow.Cells[i].Value; if (timeValue != null) { DateTime date = new DateTime(int.Parse(Year), Month, dataGridView1.CurrentRow.Cells[i].ColumnIndex - 1).Date; timeWorked.Add(date, timeValue.ToString()); //добавляем дату и отработанное время PersonProxy.SetWorkingTime(timeWorked, person); //отправляем данные на обработку } } //} } }
public ValidatePageViewModel() { PocoPerson = new Person() { Name = "AAAAAAAA", LastName = "BBBBBBBBBB" }; PersonProxy person = new PersonProxy(PocoPerson) { Name = PocoPerson.Name, LastName = PocoPerson.LastName, Validator = i => { var u = i as PersonProxy; if (string.IsNullOrEmpty(u.Name)) { u.Properties[nameof(u.Name)].Errors.Add("First name is required"); } else if (u.Name.Length < 3) { u.Properties[nameof(u.Name)].Errors.Add("First name is less then 3 symbols"); } if (string.IsNullOrEmpty(u.LastName)) { u.Properties[nameof(u.LastName)].Errors.Add("Last name is required"); } }, }; CurPerson = person; }
public List <PersonProxy> GetPersonsByDepartmentId(int DepartmentId) { try { BPerson PersonBusinesss = new BPerson(); List <PersonProxy> proxys = new List <PersonProxy>(); var persons = PersonBusinesss.GetPersonsByDirecetDepartmentId(DepartmentId); foreach (var person in persons) { PersonProxy proxy = new PersonProxy(); proxy.ID = person.ID; proxy.FirstName = person.FirstName; proxy.LastName = person.LastName; proxy.BarCode = person.BarCode; proxy.Active = person.Active; proxy.IsDeleted = person.IsDeleted; proxy.CardNum = person.CardNum; proxy.EmploymentDate = person.EmploymentDate; proxy.ParentPath = person.Department.ParentPath; proxys.Add(proxy); } return(proxys); } catch (UIValidationExceptions ex) { this.exceptionHandler.ApiHandleException("ProfileServiceProvider", ex); throw ex; } catch (Exception ex) { this.exceptionHandler.ApiHandleException("ProfileServiceProvider", ex); throw ex; } }
public WorkerInfoForm(PersonProxy workerToUpdate, bool edit) { InitializeComponent(); Worker = workerToUpdate; _edit = edit; }
public FilterForm(DataGridView dgv) { InitializeComponent(); PersonProxy = new PersonProxy(); FillGrid(); DataGrid = dgv; }
public Person FindById(int id) { // Notice we are creating PersonProxy and not Person Person person = new PersonProxy(); // Set person properties based on data from the database return(person); }
private void btnDelete_Click(object sender, EventArgs e) { PersonProxy workerToDelete = new PersonProxy(); workerToDelete.ID = int.Parse(dataGridView1.CurrentRow.Cells["PersonId"].Value.ToString()); workerToDelete.DeletePerson(); FillDataGridView(); }
public PersonEntity Create(ICreationSpec<PersonEntity, PersonConstructorParameters> spec) { PersonProxy person = new PersonProxy(new PersonDto { PersonId = _idDao.Generate("Person") }); person.Transient = true; spec.Satisfied(person); return person; }
public WorkerInfoForm(bool edit) { InitializeComponent(); _edit = edit; Worker = new PersonProxy(); cmbxGender.SelectedIndex = 0; }
private void filterForm_PersonSelected(object sender, FilterEventArgs e) { if (e is FilterEventArgs) { FilterEventArgs filterEventArgs = e as FilterEventArgs; Person person = PersonProxy.SearchPersonById(filterEventArgs.ID); dataGridView1.Rows.Add(person.ID, person.LastName + " " + person.FirstName + " " + person.Patronymic); } }
/// <summary> /// Автозаполнение таблицы работниками /// </summary> private void FillGrid(bool clear) { //если таблица пуста - добавляем первого работника if (dataGridView1.RowCount <= 1) { if (!clear) { if (NetProxy.IsShifted(int.Parse(Year), Month)) { foreach (Person person in PersonProxy.GetPersons()) { dataGridView1.Rows.Add(person.ID, person.LastName + " " + person.FirstName + " " + person.Patronymic); } } } else { foreach (Person person in PersonProxy.GetPersons()) { dataGridView1.Rows.Add(person.ID, person.LastName + " " + person.FirstName + " " + person.Patronymic); } } } else { //проверка на уже введеного сотрудника //во избежание дублирования int rowCount = dataGridView1.RowCount - 1; foreach (Person person in PersonProxy.GetPersons()) { bool exists = false; for (int i = 0; i < rowCount; i++) { object idCellValue = dataGridView1.Rows[i].Cells[0].Value; if (idCellValue != null) { int cellValue = int.Parse(idCellValue.ToString()); if (cellValue != person.ID) { continue; } exists = true; break; } } if (!exists) { dataGridView1.Rows.Add(person.ID, person.LastName + " " + person.FirstName + " " + person.Patronymic); } } } }
public IEnumerable<PersonEntity> List(ISelectionPredicateSpec<PersonEntity, Operator> spec) { IEnumerable<PersonDto> dtos = _personDao.GetList(spec.Predicate()); foreach (PersonDto dto in dtos) { PersonProxy person = new PersonProxy(dto); yield return person; } }
public async override Task OnNavigatedToAsync(object parameter, NavigationMode mode, IDictionary <string, object> state) { currentPerson = parameter == null ? new Person() { Id = Guid.NewGuid().ToString() } : parameter as Person; var temp = new PersonProxy(currentPerson) { Name = currentPerson.Name, LastName = currentPerson.LastName, Validator = i => { var u = i as PersonProxy; if (string.IsNullOrEmpty(u.Name)) { u.Properties[nameof(u.Name)].Errors.Add("First name is required"); } else if (u.Name.Length < 3) { u.Properties[nameof(u.Name)].Errors.Add("First name is less then 3 symbols"); } if (string.IsNullOrEmpty(u.LastName)) { u.Properties[nameof(u.LastName)].Errors.Add("Last name is required"); } if (string.IsNullOrEmpty(u.Email)) { u.Properties[nameof(u.Email)].Errors.Add("Email is required."); } else if (!new System.ComponentModel.DataAnnotations.EmailAddressAttribute().IsValid(u.Email)) { u.Properties[nameof(u.Email)].Errors.Add("A valid Email is required."); } }, }; TempPerson = temp; TempPerson.Validate(); if (parameter == null) { currentState = States.Add; Title = "Adding new person"; } else if (parameter != null) { currentState = States.Edit; Title = $"Editting {TempPerson.FullName}"; } await Task.CompletedTask; }
public PersonEntity Find(PersonId id) { PersonDto dto = _personDao.Find(id.Value); if (dto == null) { return null; } PersonProxy person = new PersonProxy(dto); return person; }
/// <summary> /// Заполнение таблицы списком сотрудников, /// отсоритованных по табельному номеру /// </summary> private void FillDataGridView() { if (dataGridView1.Rows.Count > 0) { dataGridView1.Rows.Clear(); } foreach (Person person in PersonProxy.GetPersons()) { dataGridView1.Rows.Add(person.ID, person.LastName, person.FirstName, person.Patronymic, person.Gender ? "Муж" : "Жен", person.BirthDate.ToShortDateString()); } }
public TimetableForm(string year, int month) { InitializeComponent(); PersonProxy = new PersonProxy(); NetProxy = new NetProxy(); Year = year; Month = month; PaintGrid(); //FilterForm = Application.OpenForms["filterForm"] as FilterForm; //FilterForm = new FilterForm(); //FilterForm.PersonSelected += new EventHandler<FilterEventArgs>(filterForm_PersonSelected); }
public HomeViewModel(Account person) { AddPersonCommand = new RelayCommand(AddPersonExecute, AddPersonCanExecute); ModifyPersonCommand = new RelayCommand(ModifyPersonExecute, ModifyPersonCanExecute); DeletePersonCommand = new RelayCommand(DeletePersonExecute, DeletePersonCanExecute); PersonDetailsCommand = new RelayCommand(PersonDetailsExecute, PersonDetailsCanExecute); DuplicatePersonCommand = new RelayCommand(DuplicatePersonExecute, DuplicatePersonCanExecute); UndoPersonCommand = new RelayCommand(UndoPersonExecute, UndoPersonCanExecute); RedoPersonCommand = new RelayCommand(RedoPersonExecute, RedoPersonCanExecute); ShowPeopleCommand = new RelayCommand(ShowPeopleExecute, ShowPeopleCanExecute); SearchPersonCommand = new RelayCommand(SearchPersonExecute, SearchPersonCanExecute); AddEventCommand = new RelayCommand(AddEventExecute, AddEventCanExecute); ModifyEventCommand = new RelayCommand(ModifyEventExecute, ModifyEventCanExecute); DeleteEventCommand = new RelayCommand(DeleteEventExecute, DeleteEventCanExecute); EventDetailsCommand = new RelayCommand(EventDetailsExecute, EventDetailsCanExecute); ShowEventsCommand = new RelayCommand(ShowEventsExecute, ShowEventsCanExecute); CreateAccountCommand = new RelayCommand(CreateAccountExecute, CreateAccountCanExecute); ModifyAccountCommand = new RelayCommand(ModifyAccountExecute, ModifyAccountCanExecute); ModifyPersonalAccountCommand = new RelayCommand(ModifyPersonalAccountExecute, ModifyPersonalAccountCanExecute); DeleteAccountCommand = new RelayCommand(DeleteAccountExecute, DeleteAccountCanExecute); ShowAccountsCommand = new RelayCommand(ShowAccountsExecute, ShowAccountsCanExecute); LogOutCommand = new RelayCommand(LogOutExecute, LogOutCanExecute); InstanceContext instanceContext = new InstanceContext(this); _personProxy = PersonProxy.ConnectToPersonService(instanceContext); _accountProxy = AccountProxy.ConnectToAccountService(instanceContext); _eventProxy = EventProxy.ConnectToAccountService(instanceContext); _personProxy.Subscribe(); _accountProxy.Subscribe(); _eventProxy.Subscribe(); LoggedInAccount = person; LogText = LoggerHelper.Instance.ClientLogBuilder; PeopleList = new ObservableCollection <Person>(_personProxy.GetAllPeople()); AccountsList = new ObservableCollection <Account>(_accountProxy.GetAllAccounts()); EventsList = new ObservableCollection <Event>(_eventProxy.GetAllEvents()); ListOfCommands = new List <BaseCommand>(); CurrentCommand = 0; logger.Info("HomeViewModel constructor success."); LoggerHelper.Instance.LogMessage($"HomeViewModel constructor success.", EEventPriority.INFO, EStringBuilder.CLIENT); LogText = LoggerHelper.Instance.ClientLogBuilder; }
private void AddPersonExecute(object parameter) { Object[] parameters = parameter as Object[]; PersonToAdd = new Person() { FirstName = parameters[0] as String, LastName = parameters[1] as String, JMBG = parameters[2] as String, }; Person addedPerson = null; try { addedPerson = PersonProxy.AddPerson(PersonToAdd); } catch (Exception e) { logger.Error("AddPerson error on server."); LoggerHelper.Instance.LogMessage($"AddPerson error on server. Message: {e.Message}", EEventPriority.ERROR, EStringBuilder.CLIENT); } if (addedPerson != null) { CommandInvoker.RegisterCommand(new AddPersonCommand(new PersonCommandReciever(), PersonToAdd, PersonProxy)); logger.Error("Person successfully added."); LoggerHelper.Instance.LogMessage($"Person successfully added.", EEventPriority.INFO, EStringBuilder.CLIENT); UserControl uc = parameters[3] as UserControl; CurrentWindow = Window.GetWindow(uc); CurrentWindow.Close(); } else { logger.Error("Error on server or username already exists."); LoggerHelper.Instance.LogMessage($"Error on server or username already exists.", EEventPriority.ERROR, EStringBuilder.CLIENT); UserControl uc = parameters[3] as UserControl; CurrentWindow = Window.GetWindow(uc); CurrentWindow.Close(); } }
private void SetTempPerson(object person) { currentPerson = person == null ? new Person() { Id = Guid.NewGuid().ToString() } : person as Person; var temp = new PersonProxy(currentPerson) { Name = currentPerson.Name, LastName = currentPerson.LastName, Email = currentPerson.Email, DateOfBirth = currentPerson.DateOfBirth, Validator = i => { var u = i as PersonProxy; if (string.IsNullOrEmpty(u.Name)) { u.Properties[nameof(u.Name)].Errors.Add("FirstName is required"); } else if (u.Name.Length < 3) { u.Properties[nameof(u.Name)].Errors.Add("FirstName must be more then 3 symbols"); } if (string.IsNullOrEmpty(u.LastName)) { u.Properties[nameof(u.LastName)].Errors.Add("FirstName is required"); } if (string.IsNullOrEmpty(u.Email)) { u.Properties[nameof(u.Email)].Errors.Add("Email is required"); } else if (!new System.ComponentModel.DataAnnotations.EmailAddressAttribute().IsValid(u.Email)) { u.Properties[nameof(u.Email)].Errors.Add("Must consist . and @"); } } }; TempPerson = temp; TempPerson.Validate(); }
/// <summary> /// Заполнение таблицы смен /// </summary> private void FillTheShifts() { //Проходим каждый ряд работника foreach (DataGridViewRow row in dataGridView1.Rows) { if (row.Cells[0].Value != null) { Person person = PersonProxy.SearchPersonById(int.Parse(row.Cells[0].Value.ToString())); //текущий работник dataGridView2.DataSource = NetProxy.GetShifts(person, int.Parse(Year), Month); IEnumerable <Net> shifts = NetProxy.GetShifts(person, int.Parse(Year), Month); //список всех отработанных дней //проходим по каждой смене foreach (Net shift in shifts) { foreach (DataGridViewColumn column in dataGridView1.Columns) { //сверяем отработанную дату с датой, введеной в таблицу if (column.HeaderText.Contains(' ')) { string headerDate = column.HeaderText.Split(' ')[0]; if (headerDate.Length <= 2) { if (int.Parse(headerDate) == shift.DateWorked.Day) { //если дата совпадает - вводим значение row.Cells[column.Index].Value = shift.TimeWorked; } } } } } CountTotalTime(); person = null; } } }
private void ModifyPersonExecute(object parameter) { Object[] parameters = parameter as Object[]; Person modifiedPerson = null; try { modifiedPerson = PersonProxy.ModifyPerson(PersonToModify); } catch (Exception e) { logger.Error($"Error while modifying. Message: {e.Message}"); LoggerHelper.Instance.LogMessage($"Error while modifying. Message: {e.Message}", EEventPriority.ERROR, EStringBuilder.CLIENT); } if (modifiedPerson != null) { CommandInvoker.RegisterCommand(new AddPersonCommand(new PersonCommandReciever(), modifiedPerson, PersonProxy)); logger.Info("Person successfully modified."); LoggerHelper.Instance.LogMessage($"Person successfully modified.", EEventPriority.INFO, EStringBuilder.CLIENT); UserControl uc = parameters[0] as UserControl; Window window = Window.GetWindow(uc); window.Close(); } else { logger.Error("Error while modifying - server side"); LoggerHelper.Instance.LogMessage($"Error while modifying - server side", EEventPriority.ERROR, EStringBuilder.CLIENT); UserControl uc = parameters[0] as UserControl; Window window = Window.GetWindow(uc); window.Close(); } }
private void DeletePersonConfirmationExecute(object obj) { Person deletedPerson = PersonProxy.DeletePerson(PersonToBeDeleted); if (deletedPerson != null) { CommandInvoker.RegisterCommand(new DeletePersonCommand(new PersonCommandReciever(), deletedPerson, PersonProxy)); logger.Error("Person successfully deleted."); LoggerHelper.Instance.LogMessage($"Person successfully deleted.", EEventPriority.INFO, EStringBuilder.CLIENT); object[] parameters = obj as object[]; Window currentWindow = Window.GetWindow((UserControl)parameters[0]); currentWindow.Close(); } else { logger.Error("Person successfully deleted."); LoggerHelper.Instance.LogMessage($"Person successfully deleted.", EEventPriority.INFO, EStringBuilder.CLIENT); object[] parameters = obj as object[]; Window currentWindow = Window.GetWindow((UserControl)parameters[0]); currentWindow.Close(); } }
public PersonProxy GetPersonByMelliCode(string code) { try { BPerson PersonBusinesss = new BPerson(); var person = PersonBusinesss.GetByBarcode(code); if (person == null) { return(new PersonProxy()); } PersonProxy proxy = new PersonProxy(); proxy.ID = person.ID; proxy.FirstName = person.FirstName; proxy.LastName = person.LastName; proxy.BarCode = person.BarCode; proxy.Active = person.Active; proxy.IsDeleted = person.IsDeleted; proxy.CardNum = person.CardNum; proxy.EmploymentDate = person.EmploymentDate; proxy.ParentPath = person.Department.ParentPath; return(proxy); } catch (UIValidationExceptions ex) { this.exceptionHandler.ApiHandleException("ProfileServiceProvider", ex); throw ex; } catch (Exception ex) { this.exceptionHandler.ApiHandleException("ProfileServiceProvider", ex); throw ex; } }
public ResponsiblePersonProxy(PersonProxy person) { // todo this.person = person; }
public override Task OnNavigatedToAsync(object parameter, NavigationMode mode, IDictionary <string, object> state) { if (parameter == null) { if (CachedAddingPerson != null) { //Если последняя операций была Edit, то нужно вернуть пёрсона из операций Add //Иначе продолжить создавать нового пёрсона if (CurrentState == States.Edit) { Title = "Adding new person"; CurrentState = States.Add; TempPerson = CachedAddingPerson; } return(Task.CompletedTask); } } else { if (CachedEditingPerson != null) { //Если ID кэшировнного редактируемого пёрсона совпадает с ID входящим пёрсоном //то значит редактируемый пёрсон в кэше и входящий одни и тот же пёрсон if (CahcedID == (parameter as Person).Id) { //Если последняя операций была Add, то нужно вернуть пёрсона из операций Edit //Иначе продолжить редактировать пёрсона if (CurrentState == States.Add) { CurrentState = States.Edit; TempPerson = CachedEditingPerson; Title = $"Editing {TempPerson.FullName}"; } return(Task.CompletedTask); } //Иначе это разные пёрсоны то тогда удалить хранящийся ID else { CahcedID = null; } } } currentPerson = parameter == null ? new Person() { Id = Guid.NewGuid().ToString() } : parameter as Person; var temp = new PersonProxy(currentPerson) { Name = currentPerson.Name, LastName = currentPerson.LastName, Email = currentPerson.Email, DateOfBirth = currentPerson.DateOfBirth, Validator = i => { var u = i as PersonProxy; if (string.IsNullOrEmpty(u.Name)) { u.Properties[nameof(u.Name)].Errors.Add("FirstName is required"); } else if (u.Name.Length < 3) { u.Properties[nameof(u.Name)].Errors.Add("FirstName must be more then 3 symbols"); } if (string.IsNullOrEmpty(u.LastName)) { u.Properties[nameof(u.LastName)].Errors.Add("FirstName is required"); } if (string.IsNullOrEmpty(u.Email)) { u.Properties[nameof(u.Email)].Errors.Add("Email is required"); } else if (!new System.ComponentModel.DataAnnotations.EmailAddressAttribute().IsValid(u.Email)) { u.Properties[nameof(u.Email)].Errors.Add("Must consist . and @"); } } }; TempPerson = temp; TempPerson.Validate(); if (parameter == null) { CurrentState = States.Add; Title = "Adding new person"; } else { CurrentState = States.Edit; Title = $"Editing {TempPerson.FullName}"; } return(Task.CompletedTask); }
public static void Main() { //Builder var builder = new CodeBuilder("Person").AddField("string", "Name").AddField("int", "Age"); Console.WriteLine(builder.ToString()); //Factory var factory = new F.Factory(); var person = factory.CreateInstance("Alexander"); // Numbers of models should be as pointers to the Factories if we want to have different models instatiated from one Factory Console.WriteLine(person); //Prototype Point one = new Point { X = 1, Y = 2 }; Point two = new Point { X = 3, Y = 4 }; Line line = new Line { Start = one, End = two }; Line copiedLine = line.DeepCopyJson(); copiedLine.Start.X = 57; Console.WriteLine(line); Console.WriteLine(copiedLine); //Flyweight var sentence = new Sentence("Hasta la vista"); sentence[0].IsCapitalized = true; Console.WriteLine(sentence); //Proxy var person1 = new PersonProxy(new Person { Age = 21 }); Console.WriteLine(person1.Drive()); person1.Age = 14; Console.WriteLine(person1.Drink()); //Bridge var circle = new Circle(); var square = new Square(); Console.WriteLine(circle.ToString()); Console.WriteLine(square.ToString()); //Composite var manyValues = new ManyValues { new SingleValue { Value = 5 }, new SingleValue { Value = 3 }, new SingleValue { Value = 2 } }; var some = manyValues.Sum(); //ChainOfResponsibility var game = new Game(); var goblin = new Goblin(game); var goblinKing = new GoblinKing(game); //Mediator Use.Mediator mediator = new Use.Mediator(); var p1 = new Participant(mediator); var p2 = new Participant(mediator); p1.Say(2); p2.Say(4); //Memento var ba = new BankAccount(100); var m1 = ba.Deposit(50); // 150 var m2 = ba.Deposit(25); // 175 Console.WriteLine(ba); // restore to m1 ba.Restore(m1); Console.WriteLine(ba); ba.Restore(m2); Console.WriteLine(ba); }