private async Task <Header> ConvertBillingsToSettingAsync(List <Billing> billings) { var first = billings.First(); var header = new Header { CompanyId = CompanyId, CurrencyId = first.CurrencyId, CustomerId = first.CustomerId, CustomerCode = first.CustomerCode, CustomerName = first.CustomerName, DestinationId = first.DestinationId, DepartmentId = first.DepartmentId, StaffId = first.StaffId, CollectCategoryId = first.CollectCategoryId, }; header.BilledCycle = 1; header.BilledDay = ConvertValidBilledDay(first.BilledAt.Day); header.StartMonth = ToFirstDay(DateTime.Today).Value; if (header.DestinationId.HasValue) { var destination = (await GetDestinationAsync(first.CustomerId)) .FirstOrDefault(x => x.Id == first.DestinationId.Value); header.DestinationCode = destination.Code; header.DestinationName = destination.ToString(); } header.Details = billings.Select((x, index) => ConvertBillingToDetail(x, index)).ToList(); return(header); }
private void ClearControlValues() { txtPatternName.Clear(); txtCustomerCode.Clear(); lblCustomerName.Clear(); txtDestinationCode.Clear(); lblDestinationName.Clear(); txtDestinationCode.Enabled = false; btnDestination.Enabled = false; cmbCycle.SelectedIndex = -1; txtBilledDay.Clear(); datStartMonth.Clear(); datEndMonth.Clear(); txtInvoiceCode.Clear(); rdoSetFixedValueToNote1.Checked = true; rdoSetFixedValueToNote2.Checked = true; SettingHeader = new Header(); txtCustomerCode.Enabled = true; btnCustomer.Enabled = true; cmbCycle.Enabled = true; txtBilledDay.Enabled = true; datStartMonth.Enabled = true; lblDisplayRepeatCount.Clear(); SetDetailInputStatus(); Modified = false; BaseContext.SetFunction03Enabled(false); BaseContext.SetFunction08Enabled(true); }
/// <summary><see cref="Header"/>をコントロールに設定 /// 参照新規も流用</summary> /// <param name="header"></param> /// <param name="isReferencedNewData">参照新規か否か</param> /// <returns></returns> private async Task SetHeaderToControlsAsync(Header header, bool isReferencedNewData = false) { if (header == null) { return; } txtPatternName.Text = header.Name; if (header.LastCreateYearMonth.HasValue) { txtCustomerCode.Enabled = false; btnCustomer.Enabled = false; cmbCycle.Enabled = false; txtBilledDay.Enabled = false; datStartMonth.Enabled = false; } var customer = await GetCustomerByCodeAsync(header.CustomerCode); SetCustomerInformation(customer); if (!string.IsNullOrEmpty(header.DestinationCode)) { SetDestinationInfomation(await GetDestinationByCodeAsync(customer.Id, header.DestinationCode)); } cmbCycle.SelectedIndex = header.BilledCycle == 1 ? 0 : header.BilledCycle == 3 ? 1 : header.BilledCycle == 6 ? 2 : header.BilledCycle == 12 ? 3 : -1; txtBilledDay.Text = header.BilledDay.ToString(); datStartMonth.Value = header.StartMonth; datEndMonth.Value = header.EndMonth; txtInvoiceCode.Text = header.InvoiceCode; if (header.SetBillingNote1 == 0) { rdoSetFixedValueToNote1.Checked = true; } else { rdoSetYearMonthToNote1.Checked = true; } if (header.SetBillingNote2 == 0) { rdoSetFixedValueToNote2.Checked = true; } else { rdoSetYearMonthToNote2.Checked = true; } SettingHeader = header; SetDetailInputStatus(); Modified = false; BaseContext.SetFunction03Enabled(!isReferencedNewData); BaseContext.SetFunction08Enabled(false); }