diff --git a/.idea/other.xml b/.idea/other.xml
deleted file mode 100644
index 0d3a1fb..0000000
--- a/.idea/other.xml
+++ /dev/null
@@ -1,263 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/java/kz/istt/locust/DbOpenHelper.java b/app/src/main/java/kz/istt/locust/DbOpenHelper.java
index c97f219..9c3a99b 100644
--- a/app/src/main/java/kz/istt/locust/DbOpenHelper.java
+++ b/app/src/main/java/kz/istt/locust/DbOpenHelper.java
@@ -741,8 +741,8 @@ public class DbOpenHelper extends SQLiteOpenHelper
"spr_damage boolean," + //Система опрыскивания: повреждены распылители или сопла? (Да, Нет)
"spr_damage_place text," + //Если Да, какие повреждения? (Текст)
- "spr_treated_area_check boolean,"+// Обработанная площадь (проверено бригадой по мониторингу) (га)
- //"spr_fact_volume float," + // Фактическая норма объема опрыскивания (л/га) Расчет: (объем/площадь)
+ "spr_treated_area_check float,"+// Обработанная площадь (проверено бригадой по мониторингу) (га)
+ "spr_fact_volume float," + // Фактическая норма объема опрыскивания (л/га) Расчет: (объем/площадь)
"spr_observation boolean," + // Если проводилось наблюдение за опрыскиванием: соблюдалась ли надлежащая практика применения инсектицидов?
"spr_description text," + // Замечания относительно наблюдаемой практики опрыскивания
@@ -762,7 +762,7 @@ public class DbOpenHelper extends SQLiteOpenHelper
"efficacy_impact_type_id integer," + // Тип оцениваемого биологического воздействия
"efficacy_mortality float," + // Наблюдаемая эффективность обработки (%)
"efficacy_passed_time float," + // Прошло времени после обработки
- "efficacy_mortality_method integer," + // Метод оценки эффективности обработки (выбор: подсчет квадратов; подсчет по разрезам; подсчет кулиг личинок; другое)
+ "efficacy_mortality_method_id integer," + // Метод оценки эффективности обработки (выбор: подсчет квадратов; подсчет по разрезам; подсчет кулиг личинок; другое)
// Здоровье человека
"hlth_clothing_state text," + // Замечания относительно типа и состояния средств индивидуальной защиты
@@ -1259,8 +1259,8 @@ public class DbOpenHelper extends SQLiteOpenHelper
"spr_damage boolean," + //Система опрыскивания: повреждены распылители или сопла? (Да, Нет)
"spr_damage_place text," + //Если Да, какие повреждения? (Текст)
- "spr_treated_area_check boolean,"+// Обработанная площадь (проверено бригадой по мониторингу) (га)
- //"spr_fact_volume float," + // Фактическая норма объема опрыскивания (л/га) Расчет: (объем/площадь)
+ "spr_treated_area_check float,"+// Обработанная площадь (проверено бригадой по мониторингу) (га)
+ "spr_fact_volume float," + // Фактическая норма объема опрыскивания (л/га) Расчет: (объем/площадь)
"spr_observation boolean," + // Если проводилось наблюдение за опрыскиванием: соблюдалась ли надлежащая практика применения инсектицидов?
"spr_description text," + // Замечания относительно наблюдаемой практики опрыскивания
@@ -1404,6 +1404,13 @@ public class DbOpenHelper extends SQLiteOpenHelper
db.execSQL("ALTER TABLE frmlocusthealth ADD COLUMN spr_leak_place TEXT;");
db.execSQL("ALTER TABLE frmlocusthealth ADD COLUMN spr_damage_place TEXT;");
+ db.execSQL("ALTER TABLE frmlocusthealth RENAME COLUMN spr_treated_area_check TO spr_treated_area_check_DEL;");
+ db.execSQL("ALTER TABLE frmlocusthealth ADD COLUMN spr_treated_area_check float;");
+
+ db.execSQL("ALTER TABLE frmlocusthealth ADD COLUMN spr_fact_volume float;");
+ db.execSQL("ALTER TABLE frmlocusthealth ADD COLUMN efficacy_mortality_method_id integer;");
+
+
oldVersion=153;
}
diff --git a/app/src/main/java/kz/istt/locust/LocustHealthActivity.java b/app/src/main/java/kz/istt/locust/LocustHealthActivity.java
index 1e9bb13..a574274 100644
--- a/app/src/main/java/kz/istt/locust/LocustHealthActivity.java
+++ b/app/src/main/java/kz/istt/locust/LocustHealthActivity.java
@@ -122,6 +122,7 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
public EditText edtInfestedArea = null; // заселенная площадь(га)
public EditText edtTreatedArea = null; // обработанная площадь(га)
+ public EditText edtTreatedAreaCheck = null; //H Обработанная площадь (проверено бригадой по мониторингу) (га)
public View spiVegType = null; // Тип(дикая, культурная)
public EditText edtVegHeight = null; // Высота (м)
public View spiVegCover = null; // Растительный покров (Редкий, Ср., Густой)
@@ -144,10 +145,31 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
public View spiInsContainerState = null; //H Состояние пакетов или контейнеров с инсектицидами
public EditText edtInsUsedVolume = null; // Общий объем использованной рабочей жидкости (л)
+ public EditText edtSprFactVolume = null; //H Фактическая норма объема опрыскивания (л/га)
+ public View spiSprObservation = null; //H Если проводилось наблюдение за опрыскиванием: соблюдалась ли надлежащая практика применения инсектицидов?
+ public EditText edtSprDescription = null; //H Замечания относительно наблюдаемой практики опрыскивания
- public View spiEffectiveness = null; // Контроль эфективности
- public View spiTypeImpact = null; // Тип оцениваемого биологического воздействия
+ public View spiCalibrConsumptionCheck = null; //H Калибровка расхода жидкости: проверялся ли расход жидкости опрыскивателя во время мониторинга?
+ public EditText edtCalibrTime = null; //H Время калибровки (мин.):
+ public EditText edtCalibrVolume = null; //H Собранный объем (л):
+ public EditText edtCalibrRate = null; //H Расход жидкости (л/мин):
+ public View spiCalibrPrecipitation = null; //H Качество применения: проверялось ли осаждение капель во время мониторинга?
+ public EditText edtCalibrWidthCard = null; //H Длина трансекты, определенная с использованием масляно-/водочувствительной бумаги (м)
+ public EditText edtCalibrWindSpeed = null; //H Средняя скорость ветра при осаждении капель (м/с)
+ public EditText edtCalibrDropletCoating = null; //H Ширина дорожки с хорошим покрытием капель (м)
+ public EditText edtCalibrPassesInterval = null; //H Рекомендуемый интервал между проходами (м)
+ public View spiEffControl = null; // Контроль эфективности
+ public View spiEffTypeImpact = null; // Тип оцениваемого биологического воздействия
+ public EditText edtEffMortality = null; // смертность саранчи(%)
+ public EditText edtEffPassedTime = null; // Прошло времени после обработки в часах
+ public View spiEffMethod = null; // метод подсчета смертности
+
+ public View spiEffControl2 = null; //H Проведен ли контроль эффективности (бригада мониторинга)?
+ public View spiEffTypeImpact2 = null; //H Тип оцениваемого биологического воздействия
+ public EditText edtEffMortality2 = null; //H Наблюдаемая эффективность обработки (%)
+ public EditText edtEffPassedTime2 = null; //H Прошло времени после обработки
+ public View spiEffMethod2 = null; //H Метод оценки эффективности обработки (выбор: подсчет квадратов; подсчет по разрезам; подсчет кулиг личинок; другое)
//public EditText edtInsUsedVolume = null; // Общий объем использованной рабочей жидкости (л)
// public DateInput edtInsExpiryDate = null; // окончание срока действия (дата)
@@ -187,7 +209,6 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
public EditText edtSprHeight = null; // Высота над поверхностью почвы (м)
public View spiSprLeak = null; //H Механическая безопасность: наблюдалась ли утечка инсектицида?
- public View spiSprLeak = null; //H Механическая безопасность: наблюдалась ли утечка инсектицида?
public EditText edtSprLeakPlace = null; //H Если Да, в какой части опрыскивателя имеется утечка?
public View spiSprDamage = null; //H Система опрыскивания: повреждены распылители или сопла?
public EditText edtSprDamagePlace = null; //H Если Да, какие повреждения?
@@ -200,13 +221,7 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
public EditText edtSprSpeed = null; // Скорость движения (км/ч)
public View spiSprMarking = null; // Наземная маркировка(Сиг-нальщики, GPS, Машина, Нет)
- public CheckBox cbEffectiveness = null; // Галочка чтоб сделать поля не обязательными
-
- public EditText edtEffMortality = null; // смертность саранчи(%)
- public EditText edtEffTime = null; // Прошло времени после обработки в часах
- public View spiEffMethod = null; // метод подсчета смертности
-
-
+//+++++++++++++++++++
public CheckBox cbSafClothingGoggles = null; // Какой защитной одеждой пользовался оператор: Очки
public CheckBox cbSafClothingMasks = null; // Какой защитной одеждой пользовался оператор: Маска
public CheckBox cbSafClothingGloves = null; // Какой защитной одеждой пользовался оператор: Перчатки
@@ -875,40 +890,77 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
edtTreatedArea = (EditText) findViewById(R.id.edtTreatedArea);
guiTableDel.add(edtTreatedArea, "treated_area");
-//H Обработанная площадь (проверено бригадой по мониторингу) (га)
-
+ //H Обработанная площадь (проверено бригадой по мониторингу) (га)
+ edtTreatedAreaCheck = (EditText) findViewById(R.id.edtTreatedAreaCheck);
+ guiTableHealth.add(edtTreatedAreaCheck, "spr_treated_area_check");
// Общий объем использованной рабочей жидкости (л)
edtInsUsedVolume = (EditText) findViewById(R.id.edtInsUsedVolume);
guiTableDel.add(edtInsUsedVolume, "insecticide_used_volume");
-//H Фактическая норма объема опрыскивания (л/га)
-//H Если проводилось наблюдение за опрыскиванием: соблюдалась ли надлежащая практика применения инсектицидов?
-//H Замечания относительно наблюдаемой практики опрыскивания
+ //H Фактическая норма объема опрыскивания (л/га)
+ edtSprFactVolume = (EditText) findViewById(R.id.edtSprFactVolume);
+ guiTableHealth.add(edtSprFactVolume, "spr_fact_volume");
-//********** Калибровка опрыскивателя **********
+ //H Если проводилось наблюдение за опрыскиванием: соблюдалась ли надлежащая практика применения инсектицидов?
+ spiSprObservation = findViewById(R.id.spiSprObservation);
+ guiTableHealth.add(spiSprObservation, "spr_observation");
+ ((selectDB)spiSprObservation).addField("", "");
+ ((selectDB)spiSprObservation).addField(getString(R.string.Yes), "1");
+ ((selectDB)spiSprObservation).addField(getString(R.string.No), "0");
-//H Калибровка расхода жидкости: проверялся ли расход жидкости опрыскивателя во время мониторинга?
-//H Время калибровки (мин.):
-//H Собранный объем (л):
-//H Расход жидкости (л/мин):
-//H Качество применения: проверялось ли осаждение капель во время мониторинга?
-//H Длина трансекты, определенная с использованием масляно-/водочувствительной бумаги (м)
-//H Средняя скорость ветра при осаждении капель (м/с)
-//H Ширина дорожки с хорошим покрытием капель (м)
-//H Рекомендуемый интервал между проходами (м)
+ //H Замечания относительно наблюдаемой практики опрыскивания
+ edtSprDescription = (EditText) findViewById(R.id.edtSprDescription);
+ guiTableHealth.add(edtSprDescription, "spr_description");
- // Контроль эфективности
- spiEffectiveness = findViewById(R.id.spiEffectiveness);
- guiTableDel.add(spiEffectiveness, "efficiency");
- ((selectDB)spiEffectiveness).addField("", "");
- ((selectDB)spiEffectiveness).addField(getString(R.string.Yes), "1");
- ((selectDB)spiEffectiveness).addField(getString(R.string.No), "0");
+ //********** Калибровка опрыскивателя **********
+ //H Калибровка расхода жидкости: проверялся ли расход жидкости опрыскивателя во время мониторинга?
+ spiCalibrConsumptionCheck = findViewById(R.id.spiCalibrConsumptionCheck);
+ guiTableHealth.add(spiCalibrConsumptionCheck, "calibr_consumption_check");
+ ((selectDB)spiCalibrConsumptionCheck).addField("", "");
+ ((selectDB)spiCalibrConsumptionCheck).addField(getString(R.string.Yes), "1");
+ ((selectDB)spiCalibrConsumptionCheck).addField(getString(R.string.No), "0");
+ //H Время калибровки (мин.):
+ edtCalibrTime = (EditText) findViewById(R.id.edtCalibrTime);
+ guiTableHealth.add(edtCalibrTime, "calibr_time");
+ //H Собранный объем (л):
+ edtCalibrVolume = (EditText) findViewById(R.id.edtCalibrVolume);
+ guiTableHealth.add(edtCalibrVolume, "calibr_volume");
+ //H Расход жидкости (л/мин):
+ edtCalibrRate = (EditText) findViewById(R.id.edtCalibrRate);
+ guiTableHealth.add(edtCalibrRate, "calibr_rate");
+ //H Качество применения: проверялось ли осаждение капель во время мониторинга?
+ spiCalibrPrecipitation = findViewById(R.id.spiCalibrPrecipitation);
+ guiTableHealth.add(spiCalibrPrecipitation, "calibr_precipitation");
+ ((selectDB)spiCalibrPrecipitation).addField("", "");
+ ((selectDB)spiCalibrPrecipitation).addField(getString(R.string.Yes), "1");
+ ((selectDB)spiCalibrPrecipitation).addField(getString(R.string.No), "0");
+ //H Длина трансекты, определенная с использованием масляно-/водочувствительной бумаги (м)
+ edtCalibrWidthCard = (EditText) findViewById(R.id.edtCalibrWidthCard);
+ guiTableHealth.add(edtSprDescription, "calibr_width_card");
+ //H Средняя скорость ветра при осаждении капель (м/с)
+ edtCalibrWindSpeed = (EditText) findViewById(R.id.edtCalibrWindSpeed);
+ guiTableHealth.add(edtCalibrWindSpeed, "calibr_wind_speed");
+ //H Ширина дорожки с хорошим покрытием капель (м)
+ edtCalibrDropletCoating = (EditText) findViewById(R.id.edtCalibrDropletCoating);
+ guiTableHealth.add(edtCalibrDropletCoating, "calibr_droplet_coating");
+ //H Рекомендуемый интервал между проходами (м)
+ edtCalibrPassesInterval = (EditText) findViewById(R.id.edtCalibrPassesInterval);
+ guiTableHealth.add(edtCalibrPassesInterval, "calibr_passes_interval");
+
+
+ //********** Контроль эфективности **********
+ //Контроль эфективности
+ spiEffControl = findViewById(R.id.spiEffControl);
+ guiTableDel.add(spiEffControl, "efficiency");
+ ((selectDB)spiEffControl).addField("", "");
+ ((selectDB)spiEffControl).addField(getString(R.string.Yes), "1");
+ ((selectDB)spiEffControl).addField(getString(R.string.No), "0");
//Тип оцениваемого биологического воздействия
- spiTypeImpact = findViewById(R.id.spiTypeImpact);
- guiTableDel.add(spiTypeImpact, "efficacy_impact_id");
- ((selectDB)spiTypeImpact).addField("", "");
+ spiEffTypeImpact = findViewById(R.id.spiEffTypeImpact);
+ guiTableDel.add(spiEffTypeImpact, "efficacy_impact_id");
+ ((selectDB)spiEffTypeImpact).addField("", "");
dboh = new DbOpenHelper(this);
cursor = dboh
.getReadableDatabase()
@@ -919,7 +971,7 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
{
do
{
- ((selectDB)spiTypeImpact).addField(cursor.getString(cursor.getColumnIndex("name")), cursor.getString(cursor.getColumnIndex("id")));
+ ((selectDB)spiEffTypeImpact).addField(cursor.getString(cursor.getColumnIndex("name")), cursor.getString(cursor.getColumnIndex("id")));
} while (cursor.moveToNext());
}
cursor.close();
@@ -930,8 +982,8 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
guiTableDel.add(edtEffMortality, "efficacy_mortality");
// Прошло времени после обработки
- edtEffTime = (EditText) findViewById(R.id.edtEffTime);
- guiTableDel.add(edtEffTime, "efficacy_passed_time");
+ edtEffPassedTime = (EditText) findViewById(R.id.edtEffPassedTime);
+ guiTableDel.add(edtEffPassedTime, "efficacy_passed_time");
// Метод оценки эфективности обработок
spiEffMethod = findViewById(R.id.spiEffMethod);
@@ -953,11 +1005,58 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
cursor.close();
dboh.close();
-//H Проведен ли контроль эффективности (бригада мониторинга)?
-//H Тип оцениваемого биологического воздействия
-//H Наблюдаемая эффективность обработки (%)
-//H Прошло времени после обработки
-//H Метод оценки эффективности обработки (выбор: подсчет квадратов; подсчет по разрезам; подсчет кулиг личинок; другое)
+ //H Проведен ли контроль эффективности (бригада мониторинга)?
+ spiEffControl2 = findViewById(R.id.spiEffControl2);
+ guiTableDel.add(spiEffControl2, "efficacy_control");
+ ((selectDB)spiEffControl2).addField("", "");
+ ((selectDB)spiEffControl2).addField(getString(R.string.Yes), "1");
+ ((selectDB)spiEffControl2).addField(getString(R.string.No), "0");
+ //H Тип оцениваемого биологического воздействия
+ spiEffTypeImpact2 = findViewById(R.id.spiEffTypeImpact2);
+ guiTableDel.add(spiEffTypeImpact2, "efficacy_impact_type_id");
+ ((selectDB)spiEffTypeImpact2).addField("", "");
+ dboh = new DbOpenHelper(this);
+ cursor = dboh
+ .getReadableDatabase()
+ .rawQuery(
+ "select d.id, COALESCE((SELECT translation FROM _translations t JOIN _languages l ON t.language_id=l.id WHERE t.del = 0 AND identifier = d.name AND l.short_name='"
+ + Tools.getLang() + "' LIMIT 1),d.name) name from list_impact d where d.del=0 order by d.sort,d.name", null);
+ if (cursor.moveToFirst())
+ {
+ do
+ {
+ ((selectDB)spiEffTypeImpact2).addField(cursor.getString(cursor.getColumnIndex("name")), cursor.getString(cursor.getColumnIndex("id")));
+ } while (cursor.moveToNext());
+ }
+ cursor.close();
+ dboh.close();
+
+ //H Наблюдаемая эффективность обработки (%)
+ edtEffMortality2 = (EditText) findViewById(R.id.edtEffMortality2);
+ guiTableDel.add(edtEffMortality2, "efficacy_mortality");
+ //H Прошло времени после обработки
+ edtEffPassedTime2 = (EditText) findViewById(R.id.edtEffPassedTime2);
+ guiTableHealth.add(edtEffPassedTime2, "efficacy_passed_time");
+ //H Метод оценки эффективности обработки (выбор: подсчет квадратов; подсчет по разрезам; подсчет кулиг личинок; другое)
+ spiEffMethod2 = findViewById(R.id.spiEffMethod2);
+ guiTableHealth.add(spiEffMethod2, "efficacy_mortality_method_id");
+ ((selectDB)spiEffMethod2).addField("", "");
+ dboh = new DbOpenHelper(this);
+ cursor = dboh
+ .getReadableDatabase()
+ .rawQuery(
+ "select d.id, COALESCE((SELECT translation FROM _translations t JOIN _languages l ON t.language_id=l.id WHERE t.del = 0 AND identifier = d.name AND l.short_name='"
+ + Tools.getLang() + "' LIMIT 1),d.name) name from list_mortality d where d.del=0 order by d.sort,d.name", null);
+ if (cursor.moveToFirst())
+ {
+ do
+ {
+ ((selectDB)spiEffMethod2).addField(cursor.getString(cursor.getColumnIndex("name")), cursor.getString(cursor.getColumnIndex("id")));
+ } while (cursor.moveToNext());
+ }
+ cursor.close();
+ dboh.close();
+
//**********Здоровье человека**********
// Индивидуальные средства защиты
@@ -1013,10 +1112,10 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi
//Защитная одежда читая и в хорошем состоянии
spiHlthProtectiveClothingClean = findViewById(R.id.spiHlthProtectiveClothingClean);
- guiTableHealth.add(spiEffectiveness, "safety_clothing_clean");
- ((selectDB)spiEffectiveness).addField("", "");
- ((selectDB)spiEffectiveness).addField(getString(R.string.Yes), "1");
- ((selectDB)spiEffectiveness).addField(getString(R.string.No), "0");
+ guiTableHealth.add(spiHlthProtectiveClothingClean, "safety_clothing_clean");
+ ((selectDB)spiHlthProtectiveClothingClean).addField("", "");
+ ((selectDB)spiHlthProtectiveClothingClean).addField(getString(R.string.Yes), "1");
+ ((selectDB)spiHlthProtectiveClothingClean).addField(getString(R.string.No), "0");
//H Замечания относительно типа и состояния средств индивидуальной защиты
diff --git a/app/src/main/res/layout/activity_locust_health.xml b/app/src/main/res/layout/activity_locust_health.xml
index 497de0c..33f0590 100644
--- a/app/src/main/res/layout/activity_locust_health.xml
+++ b/app/src/main/res/layout/activity_locust_health.xml
@@ -1841,7 +1841,7 @@
app:boxBackgroundColor="@color/transparent">
@@ -2418,7 +2418,7 @@
android:layout_height="wrap_content"
android:hint="@string/Type_of_assessed_biological_impact">
@@ -2441,6 +2441,7 @@
app:boxBackgroundColor="@color/transparent">