diff --git a/pom.xml b/pom.xml
index 333e4de..7f464df 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,7 +8,7 @@
ru.dmitriymx
corrector-1s
jar
- 1.0-SNAPSHOT
+ 1.0.1-SNAPSHOT
@@ -144,12 +144,12 @@
./jre
- 1.0.0.0
- 1.0
+ 1.0.1.0
+ 1.0.1
Corrector 1S
DmitriyMX, 2018
- 1.0.0.0
- 1.0
+ 1.0.1.0
+ 1.0.1
Corrector 1S
corrector-1s
${project.artifactId}-${project.version}.exe
@@ -175,12 +175,12 @@
./jre
- 1.0.0.0
- 1.0
+ 1.0.1.0
+ 1.0.1
Corrector 1S
DmitriyMX, 2018
- 1.0.0.0
- 1.0
+ 1.0.1.0
+ 1.0.1
Corrector 1S
corrector-1s
${project.artifactId}-${project.version}-cli.exe
diff --git a/src/main/java/ru/dmitriymx/corrector1s/Corrector1S.java b/src/main/java/ru/dmitriymx/corrector1s/Corrector1S.java
index 4c59ad1..9596dcd 100644
--- a/src/main/java/ru/dmitriymx/corrector1s/Corrector1S.java
+++ b/src/main/java/ru/dmitriymx/corrector1s/Corrector1S.java
@@ -35,6 +35,7 @@ public class Corrector1S {
private Workbook workbook;
private Sheet sheet;
private int cellNumSum = 0;
+ private int cellBol = 0;
private int lastColumn = 0;
private CellStyle cellStyle1, cellStyle2;
@@ -60,16 +61,10 @@ public class Corrector1S {
Workbook workbook = WorkbookFactory.create(sourceFile);
Sheet sheet = workbook.getSheetAt(0);
try {
- Cell cell = sheet.getRow(6).getCell(9);
- if (!cell.getStringCellValue().equals("Больничный за счет работодателя")) {
- throw new FormatFileException();
- }
-
- sheet.getRow(7).getCell(9);
- sheet.getRow(8).getCell(9);
- sheet.getRow(9).getCell(9);
- } catch (FormatFileException e) {
- throw e;
+ sheet.getRow(6).getCell(8);
+ sheet.getRow(7).getCell(8);
+ sheet.getRow(8).getCell(8);
+ sheet.getRow(9).getCell(8);
} catch (Exception e) {
throw new FormatFileException(e);
}
@@ -82,7 +77,7 @@ public class Corrector1S {
Cell cell;
loop:
- for (int c = 10; true; c++) {
+ for (int c = 8; true; c++) {
ExcelRecord record = new ExcelRecord();
for (int r = 6; r < 9; r++) {
@@ -109,7 +104,7 @@ public class Corrector1S {
while (sheet.getNumMergedRegions() > 5) {
for(int m = 0; m < sheet.getNumMergedRegions(); m++) {
CellRangeAddress cellRangeAddress = sheet.getMergedRegion(m);
- if (cellRangeAddress.getFirstColumn() >= 10) {
+ if (cellRangeAddress.getFirstColumn() >= 8) {
sheet.removeMergedRegion(m);
break;
}
@@ -148,31 +143,36 @@ public class Corrector1S {
}
public void replaceData() {
- int c = 10;
- setCellRecord(mapRecords.remove("Дневные"), c++);
- setCellRecord(mapRecords.remove("Ночные"), c++);
- setCellRecord(mapRecords.remove("Ночные_123"), c++);
- setCellRecord(mapRecords.remove("питание_124"), c++);
- setCellRecord(mapRecords.remove("Выходные"), c++);
- setCellRecord(mapRecords.remove("выходные_135"), c++);
- setCellRecord(mapRecords.remove("пересчет за прошлый месяц _141"), c++);
- setCellRecord(mapRecords.remove("вредность_145"), c++);
- setCellRecord(mapRecords.remove("Материальная помощь при рождении ребенка_148"), c++);
- setCellRecord(mapRecords.remove("компенсация за задержку зарплаты_169"), c++);
- setCellRecord(mapRecords.remove("Оплата по среднему (донорство, посещение врача)_174"), c++);
- setCellRecord(mapRecords.remove("Компенсация проезда при использовании личного транспорта_176"), c++);
- setCellRecord(mapRecords.remove("Сверхурочные 1.5 ставки"), c++);
- setCellRecord(mapRecords.remove("сверхурочные 1,5_180"), c++);
- setCellRecord(mapRecords.remove("Сверхурочные 2 ставки"), c++);
- setCellRecord(mapRecords.remove("сверхурочные 2_181"), c++);
- setCellRecord(mapRecords.remove("Компенсация за неиспользованный отпуск (с декабря 2017)_184"), c++);
- setCellRecord(mapRecords.remove("Месячная премия 2018_186"), c++);
- setCellRecord(mapRecords.remove("Итого начислено"), c++);
+ int c = 8;
+ ExcelRecord record;
+ if ((record = mapRecords.remove("Больничный за счет работодателя_105")) != null) {
+ setCellRecord(record, c++);
+ this.cellBol = c-1;
+ }
+ if ((record = mapRecords.remove("Дневные")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Ночные")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Ночные_123")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("питание_124")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Выходные")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("выходные_135")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("пересчет за прошлый месяц _141")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("вредность_145")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Материальная помощь при рождении ребенка_148")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("компенсация за задержку зарплаты_169")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Оплата по среднему (донорство, посещение врача)_174")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Компенсация проезда при использовании личного транспорта_176")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Сверхурочные 1.5 ставки")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("сверхурочные 1,5_180")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Сверхурочные 2 ставки")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("сверхурочные 2_181")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Компенсация за неиспользованный отпуск (с декабря 2017)_184")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Месячная премия 2018_186")) != null) setCellRecord(record, c++);
+ if ((record = mapRecords.remove("Итого начислено")) != null) setCellRecord(record, c++);
cellNumSum = c-1;
if (mapRecords.size() > 0) {
- for (ExcelRecord record : mapRecords.values()) {
- setCellRecord(record, c++);
+ for (ExcelRecord rec : mapRecords.values()) {
+ setCellRecord(rec, c++);
}
}
@@ -228,11 +228,23 @@ public class Corrector1S {
initStyle();
int column = lastColumn;
+ String form1, form2;
+ if (cellBol == 0) {
+ form1 = String.format("(%s9)*31%%", CellReference.convertNumToColString(cellNumSum));
+ form2 = String.format("(%s10)*31%%", CellReference.convertNumToColString(cellNumSum));
+ } else {
+ form1 = String.format("(%s9-%s9)*31%%",
+ CellReference.convertNumToColString(cellNumSum),
+ CellReference.convertNumToColString(cellBol));
+ form2 = String.format("(%s10-%s10)*31%%",
+ CellReference.convertNumToColString(cellNumSum),
+ CellReference.convertNumToColString(cellBol));
+ }
insertCell(
"Страховые взносы + ФСС НС (31%)",
"Начислено",
- String.format("(%s9-J9)*31%%", CellReference.convertNumToColString(cellNumSum)),
- String.format("(%s10-J10)*31%%", CellReference.convertNumToColString(cellNumSum)),
+ form1,
+ form2,
column++
);
insertCell(
diff --git a/src/main/java/ru/dmitriymx/corrector1s/Main.java b/src/main/java/ru/dmitriymx/corrector1s/Main.java
index 19536c8..c8074f3 100644
--- a/src/main/java/ru/dmitriymx/corrector1s/Main.java
+++ b/src/main/java/ru/dmitriymx/corrector1s/Main.java
@@ -12,7 +12,7 @@ import java.util.List;
@Slf4j
public class Main {
- public static final String VERSION = "1.0";
+ public static final String VERSION = "1.0.1";
private static OptionParser buildOptionParser() {
final OptionParser optionParser = new OptionParser();
diff --git a/src/main/java/ru/dmitriymx/corrector1s/gui/MainApp.java b/src/main/java/ru/dmitriymx/corrector1s/gui/MainApp.java
index 2351197..9b7bca8 100644
--- a/src/main/java/ru/dmitriymx/corrector1s/gui/MainApp.java
+++ b/src/main/java/ru/dmitriymx/corrector1s/gui/MainApp.java
@@ -5,6 +5,7 @@ import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.stage.Stage;
+import ru.dmitriymx.corrector1s.Main;
import java.io.IOException;
@@ -16,7 +17,7 @@ public class MainApp extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
- primaryStage.setTitle("1С корректор (v1.0)");
+ primaryStage.setTitle(String.format("1С корректор (v%s)", Main.VERSION));
primaryStage.setResizable(false);
primaryStage.getIcons().add(new Image(getClass().getResourceAsStream("excel.png")));
primaryStage.setScene(loadScene(primaryStage));