/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * Copyright (c) 2013, MPL CodeInside http://codeinside.ru */ package xmltype; import junit.framework.Assert; import org.apache.commons.lang.time.DateFormatUtils; import org.apache.commons.lang.time.DateUtils; import org.junit.Before; import org.junit.Test; import ru.codeinside.gws.api.XmlTypes; import ru.roskazna.xsd.budgetindex.BudgetIndex; import ru.roskazna.xsd.charge.ChargeType; import ru.roskazna.xsd.organization.Account; import ru.roskazna.xsd.organization.Bank; import ru.roskazna.xsd.organization.Organization; import java.io.IOException; import java.text.ParseException; import java.util.Date; public class XMLTypeTest { private ChargeType charge; @Before public void setUp() throws Exception { charge = createCharge(); } private ChargeType createCharge() throws ParseException { final ChargeType charge = new ChargeType(); charge.setSupplierBillID("19255500000000000079"); // Уникальный идентификатор счёта в ИСП TODO уточнить, что этот параметр конечный пользователь должен знать (Bill.xsd) Date billDate = DateUtils.parseDate("2011-03-10", new String[]{"yyyy-MM-dd"}); charge.setBillDate(XmlTypes.date(DateFormatUtils.format(billDate, "dd.MM.yyyy"))); //Дата выставления счёта final Organization supplierOrgInfo = new Organization(); supplierOrgInfo.setName("Управление Федеральной миграционной службы по Республике Татарстан"); supplierOrgInfo.setINN("1655102196"); supplierOrgInfo.setKPP("165501001"); final Account account = new Account(); account.setAccount("40101810800000010001"); final Bank bank = new Bank(); bank.setBIK("049205001"); bank.setName("ГРКЦ НБ РТ г. Казани"); account.setBank(bank); supplierOrgInfo.setAccount(account); charge.setSupplierOrgInfo(supplierOrgInfo); charge.setBillFor("Госпошлина за выдачу загранпаспорта"); charge.setTotalAmount(100000L); charge.setChangeStatus("1"); /* Статус счёта 1 - новый 2 - изменение 3 - аннулирование */ charge.setTreasureBranch("УФК по Республике Татарстан"); // Орган ФК, на счёт которого должны поступать средства плательщика charge.setKBK("19210806000011000110"); charge.setOKATO("92401000000"); final BudgetIndex budgetIndex = new BudgetIndex(); budgetIndex.setStatus("0"); //Статус плательщика //TODO уточнить значения budgetIndex для этих полей оператор должен знать или они берутся и расшифровываются с использование справочника? budgetIndex.setPaymentType("0"); // тип платежа budgetIndex.setPurpose("0"); // основание платежа 2 символа максимум budgetIndex.setTaxPeriod("0"); // налоговый период до 10 символов budgetIndex.setTaxDocNumber("0"); // Показатель номера документа budgetIndex.setTaxDocDate("0"); // Показатель даты документа charge.setBudgetIndex(budgetIndex); charge.setApplicationID("455555"); //TODO уточнить, что этот идентификатор генерируется программой и оператор не должен о нем знать Уникальный идентификатор заявки до 20 символов charge.setUnifiedPayerIdentifier("0100000000006667775555643"); // единый идентификатор плательщика return charge; } }