modifiche sapori veri
This commit is contained in:
parent
3c14d437a8
commit
f6fae0e51b
125
.idea/assetWizardSettings.xml
generated
125
.idea/assetWizardSettings.xml
generated
@ -3,124 +3,6 @@
|
|||||||
<component name="WizardSettings">
|
<component name="WizardSettings">
|
||||||
<option name="children">
|
<option name="children">
|
||||||
<map>
|
<map>
|
||||||
<entry key="imageWizard">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="children">
|
|
||||||
<map>
|
|
||||||
<entry key="imageAssetPanel">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="children">
|
|
||||||
<map>
|
|
||||||
<entry key="actionbar">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="children">
|
|
||||||
<map>
|
|
||||||
<entry key="clipArt">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="values">
|
|
||||||
<map>
|
|
||||||
<entry key="color" value="000000" />
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
<option name="values">
|
|
||||||
<map>
|
|
||||||
<entry key="theme" value="HOLO_DARK" />
|
|
||||||
<entry key="themeColor" value="ffffff" />
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
<entry key="launcher">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="children">
|
|
||||||
<map>
|
|
||||||
<entry key="foregroundImage">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="values">
|
|
||||||
<map>
|
|
||||||
<entry key="color" value="000000" />
|
|
||||||
<entry key="trimmed" value="true" />
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
<option name="values">
|
|
||||||
<map>
|
|
||||||
<entry key="backgroundAssetType" value="COLOR" />
|
|
||||||
<entry key="backgroundColor" value="ffffff" />
|
|
||||||
<entry key="foregroundImage" value="C:\Work\Prod_Android\WMS_Native\ext_sources\RoundLogoWithText.png" />
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
<entry key="launcherLegacy">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="children">
|
|
||||||
<map>
|
|
||||||
<entry key="clipArt">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="values">
|
|
||||||
<map>
|
|
||||||
<entry key="color" value="000000" />
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
<entry key="notification">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="children">
|
|
||||||
<map>
|
|
||||||
<entry key="clipArt">
|
|
||||||
<value>
|
|
||||||
<PersistentState>
|
|
||||||
<option name="values">
|
|
||||||
<map>
|
|
||||||
<entry key="color" value="000000" />
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
</map>
|
|
||||||
</option>
|
|
||||||
</PersistentState>
|
|
||||||
</value>
|
|
||||||
</entry>
|
|
||||||
<entry key="vectorWizard">
|
<entry key="vectorWizard">
|
||||||
<value>
|
<value>
|
||||||
<PersistentState>
|
<PersistentState>
|
||||||
@ -136,7 +18,7 @@
|
|||||||
<PersistentState>
|
<PersistentState>
|
||||||
<option name="values">
|
<option name="values">
|
||||||
<map>
|
<map>
|
||||||
<entry key="url" value="jar:file:/C:/Program%20Files/Android/Android%20Studio/plugins/android/lib/android.jar!/images/material_design_icons/file/ic_file_upload_black_24dp.xml" />
|
<entry key="url" value="jar:file:/C:/Program%20Files/Android/Android%20Studio/plugins/android/lib/android.jar!/images/material_design_icons/content/ic_save_black_24dp.xml" />
|
||||||
</map>
|
</map>
|
||||||
</option>
|
</option>
|
||||||
</PersistentState>
|
</PersistentState>
|
||||||
@ -146,9 +28,8 @@
|
|||||||
</option>
|
</option>
|
||||||
<option name="values">
|
<option name="values">
|
||||||
<map>
|
<map>
|
||||||
<entry key="assetSourceType" value="FILE" />
|
<entry key="outputName" value="ic_save_24" />
|
||||||
<entry key="outputName" value="ic_icons8_deliver_food_reverse" />
|
<entry key="sourceFile" value="C:\Users\ValerioC" />
|
||||||
<entry key="sourceFile" value="C:\Work\Prod_Android\WMS_Native\ext_sources\ICONS\icons8-deliver-food-reverse.svg" />
|
|
||||||
</map>
|
</map>
|
||||||
</option>
|
</option>
|
||||||
</PersistentState>
|
</PersistentState>
|
||||||
|
|||||||
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
48
.idea/codeStyles/Project.xml
generated
48
.idea/codeStyles/Project.xml
generated
@ -1,53 +1,5 @@
|
|||||||
<component name="ProjectCodeStyleConfiguration">
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
<code_scheme name="Project" version="173">
|
<code_scheme name="Project" version="173">
|
||||||
<DBN-PSQL>
|
|
||||||
<case-options enabled="true">
|
|
||||||
<option name="KEYWORD_CASE" value="lower" />
|
|
||||||
<option name="FUNCTION_CASE" value="lower" />
|
|
||||||
<option name="PARAMETER_CASE" value="lower" />
|
|
||||||
<option name="DATATYPE_CASE" value="lower" />
|
|
||||||
<option name="OBJECT_CASE" value="preserve" />
|
|
||||||
</case-options>
|
|
||||||
<formatting-settings enabled="false" />
|
|
||||||
</DBN-PSQL>
|
|
||||||
<DBN-SQL>
|
|
||||||
<case-options enabled="true">
|
|
||||||
<option name="KEYWORD_CASE" value="lower" />
|
|
||||||
<option name="FUNCTION_CASE" value="lower" />
|
|
||||||
<option name="PARAMETER_CASE" value="lower" />
|
|
||||||
<option name="DATATYPE_CASE" value="lower" />
|
|
||||||
<option name="OBJECT_CASE" value="preserve" />
|
|
||||||
</case-options>
|
|
||||||
<formatting-settings enabled="false">
|
|
||||||
<option name="STATEMENT_SPACING" value="one_line" />
|
|
||||||
<option name="CLAUSE_CHOP_DOWN" value="chop_down_if_statement_long" />
|
|
||||||
<option name="ITERATION_ELEMENTS_WRAPPING" value="chop_down_if_not_single" />
|
|
||||||
</formatting-settings>
|
|
||||||
</DBN-SQL>
|
|
||||||
<DBN-PSQL>
|
|
||||||
<case-options enabled="true">
|
|
||||||
<option name="KEYWORD_CASE" value="lower" />
|
|
||||||
<option name="FUNCTION_CASE" value="lower" />
|
|
||||||
<option name="PARAMETER_CASE" value="lower" />
|
|
||||||
<option name="DATATYPE_CASE" value="lower" />
|
|
||||||
<option name="OBJECT_CASE" value="preserve" />
|
|
||||||
</case-options>
|
|
||||||
<formatting-settings enabled="false" />
|
|
||||||
</DBN-PSQL>
|
|
||||||
<DBN-SQL>
|
|
||||||
<case-options enabled="true">
|
|
||||||
<option name="KEYWORD_CASE" value="lower" />
|
|
||||||
<option name="FUNCTION_CASE" value="lower" />
|
|
||||||
<option name="PARAMETER_CASE" value="lower" />
|
|
||||||
<option name="DATATYPE_CASE" value="lower" />
|
|
||||||
<option name="OBJECT_CASE" value="preserve" />
|
|
||||||
</case-options>
|
|
||||||
<formatting-settings enabled="false">
|
|
||||||
<option name="STATEMENT_SPACING" value="one_line" />
|
|
||||||
<option name="CLAUSE_CHOP_DOWN" value="chop_down_if_statement_long" />
|
|
||||||
<option name="ITERATION_ELEMENTS_WRAPPING" value="chop_down_if_not_single" />
|
|
||||||
</formatting-settings>
|
|
||||||
</DBN-SQL>
|
|
||||||
<codeStyleSettings language="XML">
|
<codeStyleSettings language="XML">
|
||||||
<arrangement>
|
<arrangement>
|
||||||
<rules>
|
<rules>
|
||||||
|
|||||||
549
.idea/dbnavigator.xml
generated
549
.idea/dbnavigator.xml
generated
@ -1,549 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="DBNavigator.Project.DataEditorManager">
|
|
||||||
<record-view-column-sorting-type value="BY_INDEX" />
|
|
||||||
<value-preview-text-wrapping value="false" />
|
|
||||||
<value-preview-pinned value="false" />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.DataExportManager">
|
|
||||||
<export-instructions>
|
|
||||||
<create-header value="true" />
|
|
||||||
<quote-values-containing-separator value="true" />
|
|
||||||
<quote-all-values value="false" />
|
|
||||||
<value-separator value="" />
|
|
||||||
<file-name value="" />
|
|
||||||
<file-location value="" />
|
|
||||||
<scope value="GLOBAL" />
|
|
||||||
<destination value="FILE" />
|
|
||||||
<format value="EXCEL" />
|
|
||||||
<charset value="windows-1252" />
|
|
||||||
</export-instructions>
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.DatabaseBrowserManager">
|
|
||||||
<autoscroll-to-editor value="false" />
|
|
||||||
<autoscroll-from-editor value="true" />
|
|
||||||
<show-object-properties value="true" />
|
|
||||||
<loaded-nodes />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.DatabaseConsoleManager">
|
|
||||||
<connection id="3a27a6d2-c1c7-40d3-b3c7-5354d987976c">
|
|
||||||
<console name="Connection" type="STANDARD" schema="main" session="Main"><![CDATA[select * from articoli_griglia]]></console>
|
|
||||||
</connection>
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.DatabaseFileManager">
|
|
||||||
<open-files />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.DatabaseSessionManager">
|
|
||||||
<connection id="3a27a6d2-c1c7-40d3-b3c7-5354d987976c" />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.EditorStateManager">
|
|
||||||
<last-used-providers />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.MethodExecutionManager">
|
|
||||||
<method-browser />
|
|
||||||
<execution-history>
|
|
||||||
<group-entries value="true" />
|
|
||||||
<execution-inputs />
|
|
||||||
</execution-history>
|
|
||||||
<argument-values-cache />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.ObjectDependencyManager">
|
|
||||||
<last-used-dependency-type value="INCOMING" />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.ObjectQuickFilterManager">
|
|
||||||
<last-used-operator value="EQUAL" />
|
|
||||||
<filters />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.ScriptExecutionManager" clear-outputs="true">
|
|
||||||
<recently-used-interfaces />
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.Settings">
|
|
||||||
<connections>
|
|
||||||
<connection id="3a27a6d2-c1c7-40d3-b3c7-5354d987976c" active="true">
|
|
||||||
<database>
|
|
||||||
<name value="Connection" />
|
|
||||||
<description value="integry wms db" />
|
|
||||||
<database-type value="SQLITE" />
|
|
||||||
<config-type value="BASIC" />
|
|
||||||
<database-version value="3.21" />
|
|
||||||
<driver-source value="BUILTIN" />
|
|
||||||
<driver-library value="" />
|
|
||||||
<driver value="" />
|
|
||||||
<url-type value="FILE" />
|
|
||||||
<host value="localhost" />
|
|
||||||
<port value="1234" />
|
|
||||||
<database value="database" />
|
|
||||||
<files>
|
|
||||||
<file path="C:\Users\ValerioC\Documents\AndroidStudio\DeviceExplorer\razer-phone-181749V00402318\data\data\it.integry.integrywmsnative\databases\integry_wms" schema="main" />
|
|
||||||
</files>
|
|
||||||
<type value="NONE" />
|
|
||||||
<user value="" />
|
|
||||||
<deprecated-pwd value="" />
|
|
||||||
</database>
|
|
||||||
<properties>
|
|
||||||
<auto-commit value="false" />
|
|
||||||
</properties>
|
|
||||||
<ssh-settings>
|
|
||||||
<active value="false" />
|
|
||||||
<proxy-host value="" />
|
|
||||||
<proxy-port value="22" />
|
|
||||||
<proxy-user value="" />
|
|
||||||
<deprecated-proxy-pwd value="" />
|
|
||||||
<auth-type value="PASSWORD" />
|
|
||||||
<key-file value="" />
|
|
||||||
<key-passphrase value="" />
|
|
||||||
</ssh-settings>
|
|
||||||
<ssl-settings>
|
|
||||||
<active value="false" />
|
|
||||||
<certificate-authority-file value="" />
|
|
||||||
<client-certificate-file value="" />
|
|
||||||
<client-key-file value="" />
|
|
||||||
</ssl-settings>
|
|
||||||
<details>
|
|
||||||
<charset value="UTF-8" />
|
|
||||||
<session-management value="true" />
|
|
||||||
<ddl-file-binding value="true" />
|
|
||||||
<database-logging value="false" />
|
|
||||||
<connect-automatically value="true" />
|
|
||||||
<restore-workspace value="true" />
|
|
||||||
<restore-workspace-deep value="true" />
|
|
||||||
<environment-type value="default" />
|
|
||||||
<idle-time-to-disconnect value="30" />
|
|
||||||
<idle-time-to-disconnect-pool value="5" />
|
|
||||||
<credential-expiry-time value="10" />
|
|
||||||
<max-connection-pool-size value="7" />
|
|
||||||
<alternative-statement-delimiter value="" />
|
|
||||||
</details>
|
|
||||||
<object-filters hide-empty-schemas="false" hide-pseudo-columns="false">
|
|
||||||
<object-type-filter use-master-settings="true">
|
|
||||||
<object-type name="SCHEMA" enabled="true" />
|
|
||||||
<object-type name="USER" enabled="true" />
|
|
||||||
<object-type name="ROLE" enabled="true" />
|
|
||||||
<object-type name="PRIVILEGE" enabled="true" />
|
|
||||||
<object-type name="CHARSET" enabled="true" />
|
|
||||||
<object-type name="TABLE" enabled="true" />
|
|
||||||
<object-type name="VIEW" enabled="true" />
|
|
||||||
<object-type name="MATERIALIZED_VIEW" enabled="true" />
|
|
||||||
<object-type name="NESTED_TABLE" enabled="true" />
|
|
||||||
<object-type name="COLUMN" enabled="true" />
|
|
||||||
<object-type name="INDEX" enabled="true" />
|
|
||||||
<object-type name="CONSTRAINT" enabled="true" />
|
|
||||||
<object-type name="DATASET_TRIGGER" enabled="true" />
|
|
||||||
<object-type name="DATABASE_TRIGGER" enabled="true" />
|
|
||||||
<object-type name="SYNONYM" enabled="true" />
|
|
||||||
<object-type name="SEQUENCE" enabled="true" />
|
|
||||||
<object-type name="PROCEDURE" enabled="true" />
|
|
||||||
<object-type name="FUNCTION" enabled="true" />
|
|
||||||
<object-type name="PACKAGE" enabled="true" />
|
|
||||||
<object-type name="TYPE" enabled="true" />
|
|
||||||
<object-type name="TYPE_ATTRIBUTE" enabled="true" />
|
|
||||||
<object-type name="ARGUMENT" enabled="true" />
|
|
||||||
<object-type name="DIMENSION" enabled="true" />
|
|
||||||
<object-type name="CLUSTER" enabled="true" />
|
|
||||||
<object-type name="DBLINK" enabled="true" />
|
|
||||||
</object-type-filter>
|
|
||||||
<object-name-filters />
|
|
||||||
</object-filters>
|
|
||||||
</connection>
|
|
||||||
</connections>
|
|
||||||
<browser-settings>
|
|
||||||
<general>
|
|
||||||
<display-mode value="TABBED" />
|
|
||||||
<navigation-history-size value="100" />
|
|
||||||
<show-object-details value="false" />
|
|
||||||
</general>
|
|
||||||
<filters>
|
|
||||||
<object-type-filter>
|
|
||||||
<object-type name="SCHEMA" enabled="true" />
|
|
||||||
<object-type name="USER" enabled="true" />
|
|
||||||
<object-type name="ROLE" enabled="true" />
|
|
||||||
<object-type name="PRIVILEGE" enabled="true" />
|
|
||||||
<object-type name="CHARSET" enabled="true" />
|
|
||||||
<object-type name="TABLE" enabled="true" />
|
|
||||||
<object-type name="VIEW" enabled="true" />
|
|
||||||
<object-type name="MATERIALIZED_VIEW" enabled="true" />
|
|
||||||
<object-type name="NESTED_TABLE" enabled="true" />
|
|
||||||
<object-type name="COLUMN" enabled="true" />
|
|
||||||
<object-type name="INDEX" enabled="true" />
|
|
||||||
<object-type name="CONSTRAINT" enabled="true" />
|
|
||||||
<object-type name="DATASET_TRIGGER" enabled="true" />
|
|
||||||
<object-type name="DATABASE_TRIGGER" enabled="true" />
|
|
||||||
<object-type name="SYNONYM" enabled="true" />
|
|
||||||
<object-type name="SEQUENCE" enabled="true" />
|
|
||||||
<object-type name="PROCEDURE" enabled="true" />
|
|
||||||
<object-type name="FUNCTION" enabled="true" />
|
|
||||||
<object-type name="PACKAGE" enabled="true" />
|
|
||||||
<object-type name="TYPE" enabled="true" />
|
|
||||||
<object-type name="TYPE_ATTRIBUTE" enabled="true" />
|
|
||||||
<object-type name="ARGUMENT" enabled="true" />
|
|
||||||
<object-type name="DIMENSION" enabled="true" />
|
|
||||||
<object-type name="CLUSTER" enabled="true" />
|
|
||||||
<object-type name="DBLINK" enabled="true" />
|
|
||||||
</object-type-filter>
|
|
||||||
</filters>
|
|
||||||
<sorting>
|
|
||||||
<object-type name="COLUMN" sorting-type="NAME" />
|
|
||||||
<object-type name="FUNCTION" sorting-type="NAME" />
|
|
||||||
<object-type name="PROCEDURE" sorting-type="NAME" />
|
|
||||||
<object-type name="ARGUMENT" sorting-type="POSITION" />
|
|
||||||
</sorting>
|
|
||||||
<default-editors>
|
|
||||||
<object-type name="VIEW" editor-type="SELECTION" />
|
|
||||||
<object-type name="PACKAGE" editor-type="SELECTION" />
|
|
||||||
<object-type name="TYPE" editor-type="SELECTION" />
|
|
||||||
</default-editors>
|
|
||||||
</browser-settings>
|
|
||||||
<navigation-settings>
|
|
||||||
<lookup-filters>
|
|
||||||
<lookup-objects>
|
|
||||||
<object-type name="SCHEMA" enabled="true" />
|
|
||||||
<object-type name="USER" enabled="false" />
|
|
||||||
<object-type name="ROLE" enabled="false" />
|
|
||||||
<object-type name="PRIVILEGE" enabled="false" />
|
|
||||||
<object-type name="CHARSET" enabled="false" />
|
|
||||||
<object-type name="TABLE" enabled="true" />
|
|
||||||
<object-type name="VIEW" enabled="true" />
|
|
||||||
<object-type name="MATERIALIZED VIEW" enabled="true" />
|
|
||||||
<object-type name="NESTED TABLE" enabled="false" />
|
|
||||||
<object-type name="COLUMN" enabled="false" />
|
|
||||||
<object-type name="INDEX" enabled="true" />
|
|
||||||
<object-type name="CONSTRAINT" enabled="true" />
|
|
||||||
<object-type name="DATASET TRIGGER" enabled="true" />
|
|
||||||
<object-type name="DATABASE TRIGGER" enabled="true" />
|
|
||||||
<object-type name="SYNONYM" enabled="false" />
|
|
||||||
<object-type name="SEQUENCE" enabled="true" />
|
|
||||||
<object-type name="PROCEDURE" enabled="true" />
|
|
||||||
<object-type name="FUNCTION" enabled="true" />
|
|
||||||
<object-type name="PACKAGE" enabled="true" />
|
|
||||||
<object-type name="TYPE" enabled="true" />
|
|
||||||
<object-type name="TYPE ATTRIBUTE" enabled="false" />
|
|
||||||
<object-type name="ARGUMENT" enabled="false" />
|
|
||||||
<object-type name="DIMENSION" enabled="false" />
|
|
||||||
<object-type name="CLUSTER" enabled="false" />
|
|
||||||
<object-type name="DBLINK" enabled="true" />
|
|
||||||
</lookup-objects>
|
|
||||||
<force-database-load value="false" />
|
|
||||||
<prompt-connection-selection value="true" />
|
|
||||||
<prompt-schema-selection value="true" />
|
|
||||||
</lookup-filters>
|
|
||||||
</navigation-settings>
|
|
||||||
<dataset-grid-settings>
|
|
||||||
<general>
|
|
||||||
<enable-zooming value="true" />
|
|
||||||
<enable-column-tooltip value="true" />
|
|
||||||
</general>
|
|
||||||
<sorting>
|
|
||||||
<nulls-first value="true" />
|
|
||||||
<max-sorting-columns value="4" />
|
|
||||||
</sorting>
|
|
||||||
<tracking-columns>
|
|
||||||
<columnNames value="" />
|
|
||||||
<visible value="true" />
|
|
||||||
<editable value="false" />
|
|
||||||
</tracking-columns>
|
|
||||||
</dataset-grid-settings>
|
|
||||||
<dataset-editor-settings>
|
|
||||||
<text-editor-popup>
|
|
||||||
<active value="false" />
|
|
||||||
<active-if-empty value="false" />
|
|
||||||
<data-length-threshold value="100" />
|
|
||||||
<popup-delay value="1000" />
|
|
||||||
</text-editor-popup>
|
|
||||||
<values-actions-popup>
|
|
||||||
<show-popup-button value="true" />
|
|
||||||
<element-count-threshold value="1000" />
|
|
||||||
<data-length-threshold value="250" />
|
|
||||||
</values-actions-popup>
|
|
||||||
<general>
|
|
||||||
<fetch-block-size value="100" />
|
|
||||||
<fetch-timeout value="30" />
|
|
||||||
<trim-whitespaces value="true" />
|
|
||||||
<convert-empty-strings-to-null value="true" />
|
|
||||||
<select-content-on-cell-edit value="true" />
|
|
||||||
<large-value-preview-active value="true" />
|
|
||||||
</general>
|
|
||||||
<filters>
|
|
||||||
<prompt-filter-dialog value="true" />
|
|
||||||
<default-filter-type value="BASIC" />
|
|
||||||
</filters>
|
|
||||||
<qualified-text-editor text-length-threshold="300">
|
|
||||||
<content-types>
|
|
||||||
<content-type name="Text" enabled="true" />
|
|
||||||
<content-type name="Properties" enabled="true" />
|
|
||||||
<content-type name="XML" enabled="true" />
|
|
||||||
<content-type name="DTD" enabled="true" />
|
|
||||||
<content-type name="HTML" enabled="true" />
|
|
||||||
<content-type name="XHTML" enabled="true" />
|
|
||||||
<content-type name="Java" enabled="true" />
|
|
||||||
<content-type name="Groovy" enabled="true" />
|
|
||||||
<content-type name="AIDL" enabled="true" />
|
|
||||||
<content-type name="YAML" enabled="true" />
|
|
||||||
<content-type name="Manifest" enabled="true" />
|
|
||||||
</content-types>
|
|
||||||
</qualified-text-editor>
|
|
||||||
<record-navigation>
|
|
||||||
<navigation-target value="VIEWER" />
|
|
||||||
</record-navigation>
|
|
||||||
</dataset-editor-settings>
|
|
||||||
<code-editor-settings>
|
|
||||||
<general>
|
|
||||||
<show-object-navigation-gutter value="false" />
|
|
||||||
<show-spec-declaration-navigation-gutter value="true" />
|
|
||||||
<enable-spellchecking value="true" />
|
|
||||||
<enable-reference-spellchecking value="false" />
|
|
||||||
</general>
|
|
||||||
<confirmations>
|
|
||||||
<save-changes value="false" />
|
|
||||||
<revert-changes value="true" />
|
|
||||||
</confirmations>
|
|
||||||
</code-editor-settings>
|
|
||||||
<code-completion-settings>
|
|
||||||
<filters>
|
|
||||||
<basic-filter>
|
|
||||||
<filter-element type="RESERVED_WORD" id="keyword" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="function" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="parameter" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="datatype" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="exception" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="schema" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="role" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="user" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="privilege" selected="true" />
|
|
||||||
<user-schema>
|
|
||||||
<filter-element type="OBJECT" id="table" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="materialized view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="index" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="constraint" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="trigger" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="synonym" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="sequence" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="procedure" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="function" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="package" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="type" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dimension" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="cluster" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dblink" selected="true" />
|
|
||||||
</user-schema>
|
|
||||||
<public-schema>
|
|
||||||
<filter-element type="OBJECT" id="table" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="view" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="materialized view" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="index" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="constraint" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="trigger" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="synonym" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="sequence" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="procedure" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="function" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="package" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="type" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="dimension" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="cluster" selected="false" />
|
|
||||||
<filter-element type="OBJECT" id="dblink" selected="false" />
|
|
||||||
</public-schema>
|
|
||||||
<any-schema>
|
|
||||||
<filter-element type="OBJECT" id="table" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="materialized view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="index" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="constraint" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="trigger" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="synonym" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="sequence" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="procedure" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="function" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="package" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="type" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dimension" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="cluster" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dblink" selected="true" />
|
|
||||||
</any-schema>
|
|
||||||
</basic-filter>
|
|
||||||
<extended-filter>
|
|
||||||
<filter-element type="RESERVED_WORD" id="keyword" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="function" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="parameter" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="datatype" selected="true" />
|
|
||||||
<filter-element type="RESERVED_WORD" id="exception" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="schema" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="user" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="role" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="privilege" selected="true" />
|
|
||||||
<user-schema>
|
|
||||||
<filter-element type="OBJECT" id="table" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="materialized view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="index" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="constraint" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="trigger" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="synonym" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="sequence" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="procedure" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="function" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="package" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="type" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dimension" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="cluster" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dblink" selected="true" />
|
|
||||||
</user-schema>
|
|
||||||
<public-schema>
|
|
||||||
<filter-element type="OBJECT" id="table" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="materialized view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="index" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="constraint" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="trigger" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="synonym" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="sequence" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="procedure" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="function" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="package" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="type" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dimension" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="cluster" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dblink" selected="true" />
|
|
||||||
</public-schema>
|
|
||||||
<any-schema>
|
|
||||||
<filter-element type="OBJECT" id="table" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="materialized view" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="index" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="constraint" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="trigger" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="synonym" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="sequence" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="procedure" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="function" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="package" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="type" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dimension" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="cluster" selected="true" />
|
|
||||||
<filter-element type="OBJECT" id="dblink" selected="true" />
|
|
||||||
</any-schema>
|
|
||||||
</extended-filter>
|
|
||||||
</filters>
|
|
||||||
<sorting enabled="true">
|
|
||||||
<sorting-element type="RESERVED_WORD" id="keyword" />
|
|
||||||
<sorting-element type="RESERVED_WORD" id="datatype" />
|
|
||||||
<sorting-element type="OBJECT" id="column" />
|
|
||||||
<sorting-element type="OBJECT" id="table" />
|
|
||||||
<sorting-element type="OBJECT" id="view" />
|
|
||||||
<sorting-element type="OBJECT" id="materialized view" />
|
|
||||||
<sorting-element type="OBJECT" id="index" />
|
|
||||||
<sorting-element type="OBJECT" id="constraint" />
|
|
||||||
<sorting-element type="OBJECT" id="trigger" />
|
|
||||||
<sorting-element type="OBJECT" id="synonym" />
|
|
||||||
<sorting-element type="OBJECT" id="sequence" />
|
|
||||||
<sorting-element type="OBJECT" id="procedure" />
|
|
||||||
<sorting-element type="OBJECT" id="function" />
|
|
||||||
<sorting-element type="OBJECT" id="package" />
|
|
||||||
<sorting-element type="OBJECT" id="type" />
|
|
||||||
<sorting-element type="OBJECT" id="dimension" />
|
|
||||||
<sorting-element type="OBJECT" id="cluster" />
|
|
||||||
<sorting-element type="OBJECT" id="dblink" />
|
|
||||||
<sorting-element type="OBJECT" id="schema" />
|
|
||||||
<sorting-element type="OBJECT" id="role" />
|
|
||||||
<sorting-element type="OBJECT" id="user" />
|
|
||||||
<sorting-element type="RESERVED_WORD" id="function" />
|
|
||||||
<sorting-element type="RESERVED_WORD" id="parameter" />
|
|
||||||
</sorting>
|
|
||||||
<format>
|
|
||||||
<enforce-code-style-case value="true" />
|
|
||||||
</format>
|
|
||||||
</code-completion-settings>
|
|
||||||
<execution-engine-settings>
|
|
||||||
<statement-execution>
|
|
||||||
<fetch-block-size value="100" />
|
|
||||||
<execution-timeout value="20" />
|
|
||||||
<debug-execution-timeout value="600" />
|
|
||||||
<focus-result value="false" />
|
|
||||||
<prompt-execution value="false" />
|
|
||||||
</statement-execution>
|
|
||||||
<script-execution>
|
|
||||||
<command-line-interfaces />
|
|
||||||
<execution-timeout value="300" />
|
|
||||||
</script-execution>
|
|
||||||
<method-execution>
|
|
||||||
<execution-timeout value="30" />
|
|
||||||
<debug-execution-timeout value="600" />
|
|
||||||
<parameter-history-size value="10" />
|
|
||||||
</method-execution>
|
|
||||||
</execution-engine-settings>
|
|
||||||
<operation-settings>
|
|
||||||
<transactions>
|
|
||||||
<uncommitted-changes>
|
|
||||||
<on-project-close value="ASK" />
|
|
||||||
<on-disconnect value="ASK" />
|
|
||||||
<on-autocommit-toggle value="ASK" />
|
|
||||||
</uncommitted-changes>
|
|
||||||
<multiple-uncommitted-changes>
|
|
||||||
<on-commit value="ASK" />
|
|
||||||
<on-rollback value="ASK" />
|
|
||||||
</multiple-uncommitted-changes>
|
|
||||||
</transactions>
|
|
||||||
<session-browser>
|
|
||||||
<disconnect-session value="ASK" />
|
|
||||||
<kill-session value="ASK" />
|
|
||||||
<reload-on-filter-change value="false" />
|
|
||||||
</session-browser>
|
|
||||||
<compiler>
|
|
||||||
<compile-type value="KEEP" />
|
|
||||||
<compile-dependencies value="ASK" />
|
|
||||||
<always-show-controls value="false" />
|
|
||||||
</compiler>
|
|
||||||
<debugger>
|
|
||||||
<debugger-type value="ASK" />
|
|
||||||
<use-generic-runners value="true" />
|
|
||||||
</debugger>
|
|
||||||
</operation-settings>
|
|
||||||
<ddl-file-settings>
|
|
||||||
<extensions>
|
|
||||||
<mapping file-type-id="VIEW" extensions="vw" />
|
|
||||||
<mapping file-type-id="TRIGGER" extensions="trg" />
|
|
||||||
<mapping file-type-id="PROCEDURE" extensions="prc" />
|
|
||||||
<mapping file-type-id="FUNCTION" extensions="fnc" />
|
|
||||||
<mapping file-type-id="PACKAGE" extensions="pkg" />
|
|
||||||
<mapping file-type-id="PACKAGE_SPEC" extensions="pks" />
|
|
||||||
<mapping file-type-id="PACKAGE_BODY" extensions="pkb" />
|
|
||||||
<mapping file-type-id="TYPE" extensions="tpe" />
|
|
||||||
<mapping file-type-id="TYPE_SPEC" extensions="tps" />
|
|
||||||
<mapping file-type-id="TYPE_BODY" extensions="tpb" />
|
|
||||||
</extensions>
|
|
||||||
<general>
|
|
||||||
<lookup-ddl-files value="true" />
|
|
||||||
<create-ddl-files value="false" />
|
|
||||||
<synchronize-ddl-files value="true" />
|
|
||||||
<use-qualified-names value="false" />
|
|
||||||
<make-scripts-rerunnable value="true" />
|
|
||||||
</general>
|
|
||||||
</ddl-file-settings>
|
|
||||||
<general-settings>
|
|
||||||
<regional-settings>
|
|
||||||
<date-format value="MEDIUM" />
|
|
||||||
<number-format value="UNGROUPED" />
|
|
||||||
<locale value="SYSTEM_DEFAULT" />
|
|
||||||
<use-custom-formats value="false" />
|
|
||||||
</regional-settings>
|
|
||||||
<environment>
|
|
||||||
<environment-types>
|
|
||||||
<environment-type id="development" name="Development" description="Development environment" color="-2430209/-12296320" readonly-code="false" readonly-data="false" />
|
|
||||||
<environment-type id="integration" name="Integration" description="Integration environment" color="-2621494/-12163514" readonly-code="true" readonly-data="false" />
|
|
||||||
<environment-type id="production" name="Production" description="Productive environment" color="-11574/-10271420" readonly-code="true" readonly-data="true" />
|
|
||||||
<environment-type id="other" name="Other" description="" color="-1576/-10724543" readonly-code="false" readonly-data="false" />
|
|
||||||
</environment-types>
|
|
||||||
<visibility-settings>
|
|
||||||
<connection-tabs value="true" />
|
|
||||||
<dialog-headers value="true" />
|
|
||||||
<object-editor-tabs value="true" />
|
|
||||||
<script-editor-tabs value="false" />
|
|
||||||
<execution-result-tabs value="true" />
|
|
||||||
</visibility-settings>
|
|
||||||
</environment>
|
|
||||||
</general-settings>
|
|
||||||
</component>
|
|
||||||
<component name="DBNavigator.Project.StatementExecutionManager">
|
|
||||||
<execution-variables />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
39
.idea/misc.xml
generated
39
.idea/misc.xml
generated
@ -1,44 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="NullableNotNullManager">
|
|
||||||
<option name="myDefaultNullable" value="android.support.annotation.Nullable" />
|
|
||||||
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
|
|
||||||
<option name="myNullables">
|
|
||||||
<value>
|
|
||||||
<list size="12">
|
|
||||||
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
|
|
||||||
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
|
|
||||||
<item index="2" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" />
|
|
||||||
<item index="3" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
|
|
||||||
<item index="4" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
|
|
||||||
<item index="5" class="java.lang.String" itemvalue="androidx.annotation.Nullable" />
|
|
||||||
<item index="6" class="java.lang.String" itemvalue="androidx.annotation.RecentlyNullable" />
|
|
||||||
<item index="7" class="java.lang.String" itemvalue="android.annotation.Nullable" />
|
|
||||||
<item index="8" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.qual.Nullable" />
|
|
||||||
<item index="9" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NullableDecl" />
|
|
||||||
<item index="10" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NullableType" />
|
|
||||||
<item index="11" class="java.lang.String" itemvalue="com.android.annotations.Nullable" />
|
|
||||||
</list>
|
|
||||||
</value>
|
|
||||||
</option>
|
|
||||||
<option name="myNotNulls">
|
|
||||||
<value>
|
|
||||||
<list size="11">
|
|
||||||
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
|
|
||||||
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
|
|
||||||
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
|
|
||||||
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.NonNull" />
|
|
||||||
<item index="4" class="java.lang.String" itemvalue="androidx.annotation.NonNull" />
|
|
||||||
<item index="5" class="java.lang.String" itemvalue="androidx.annotation.RecentlyNonNull" />
|
|
||||||
<item index="6" class="java.lang.String" itemvalue="android.annotation.NonNull" />
|
|
||||||
<item index="7" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.qual.NonNull" />
|
|
||||||
<item index="8" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullDecl" />
|
|
||||||
<item index="9" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullType" />
|
|
||||||
<item index="10" class="java.lang.String" itemvalue="com.android.annotations.NonNull" />
|
|
||||||
</list>
|
|
||||||
</value>
|
|
||||||
</option>
|
|
||||||
</component>
|
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="JDK" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="JDK" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
|
|||||||
55
.idea/runConfigurations/app.xml
generated
55
.idea/runConfigurations/app.xml
generated
@ -1,55 +0,0 @@
|
|||||||
<component name="ProjectRunConfigurationManager">
|
|
||||||
<configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App" activateToolWindowBeforeRun="false">
|
|
||||||
<module name="app" />
|
|
||||||
<option name="DEPLOY" value="true" />
|
|
||||||
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
|
|
||||||
<option name="DEPLOY_AS_INSTANT" value="false" />
|
|
||||||
<option name="ARTIFACT_NAME" value="" />
|
|
||||||
<option name="PM_INSTALL_OPTIONS" value="" />
|
|
||||||
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="dynamic__base,dynamic_frudis,dynamic_ime,dynamic_vgalimenti" />
|
|
||||||
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
|
||||||
<option name="MODE" value="default_activity" />
|
|
||||||
<option name="CLEAR_LOGCAT" value="true" />
|
|
||||||
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
|
|
||||||
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
|
|
||||||
<option name="FORCE_STOP_RUNNING_APP" value="true" />
|
|
||||||
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
|
|
||||||
<option name="USE_LAST_SELECTED_DEVICE" value="true" />
|
|
||||||
<option name="PREFERRED_AVD" value="" />
|
|
||||||
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
|
||||||
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
|
||||||
<option name="DEBUGGER_TYPE" value="Auto" />
|
|
||||||
<Auto>
|
|
||||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
|
||||||
<option name="SHOW_STATIC_VARS" value="true" />
|
|
||||||
<option name="WORKING_DIR" value="" />
|
|
||||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
|
||||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
|
||||||
</Auto>
|
|
||||||
<Hybrid>
|
|
||||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
|
||||||
<option name="SHOW_STATIC_VARS" value="true" />
|
|
||||||
<option name="WORKING_DIR" value="" />
|
|
||||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
|
||||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
|
||||||
</Hybrid>
|
|
||||||
<Java />
|
|
||||||
<Native>
|
|
||||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
|
||||||
<option name="SHOW_STATIC_VARS" value="true" />
|
|
||||||
<option name="WORKING_DIR" value="" />
|
|
||||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
|
||||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
|
||||||
</Native>
|
|
||||||
<Profilers>
|
|
||||||
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
|
||||||
<option name="STARTUP_CPU_PROFILING_ENABLED" value="true" />
|
|
||||||
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Sample Java Methods" />
|
|
||||||
</Profilers>
|
|
||||||
<option name="DEEP_LINK" value="" />
|
|
||||||
<option name="ACTIVITY_CLASS" value="" />
|
|
||||||
<method v="2">
|
|
||||||
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
|
|
||||||
</method>
|
|
||||||
</configuration>
|
|
||||||
</component>
|
|
||||||
@ -113,6 +113,7 @@ dependencies {
|
|||||||
implementation 'androidx.lifecycle:lifecycle-runtime:2.1.0'
|
implementation 'androidx.lifecycle:lifecycle-runtime:2.1.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
|
implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-common-java8:2.1.0'
|
implementation 'androidx.lifecycle:lifecycle-common-java8:2.1.0'
|
||||||
|
implementation 'org.apache.commons:commons-text:1.6'
|
||||||
//kapt "androidx.lifecycle:lifecycle-compiler:2.0.0"
|
//kapt "androidx.lifecycle:lifecycle-compiler:2.0.0"
|
||||||
implementation 'com.danielpuiu:ghostfish:2.0.0'
|
implementation 'com.danielpuiu:ghostfish:2.0.0'
|
||||||
annotationProcessor "com.danielpuiu:ghostfish-compiler:2.0.0"
|
annotationProcessor "com.danielpuiu:ghostfish-compiler:2.0.0"
|
||||||
|
|||||||
@ -18,6 +18,7 @@
|
|||||||
android:supportsRtl="true"
|
android:supportsRtl="true"
|
||||||
android:theme="@style/AppTheme"
|
android:theme="@style/AppTheme"
|
||||||
android:usesCleartextTraffic="true">
|
android:usesCleartextTraffic="true">
|
||||||
|
<activity android:name=".gest.pv_ordine_acquisto_edit.PVOrdineAcquistoEditActivity"></activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".gest.picking_resi.PickingResiActivity"
|
android:name=".gest.picking_resi.PickingResiActivity"
|
||||||
android:label="@string/activity_ultime_consegne_title"
|
android:label="@string/activity_ultime_consegne_title"
|
||||||
|
|||||||
@ -51,19 +51,23 @@ public class MainApplication extends Application {
|
|||||||
|
|
||||||
|
|
||||||
// DATABASE REPOSITORY FUNCTIONS
|
// DATABASE REPOSITORY FUNCTIONS
|
||||||
public static GrigliaDao getGrigliaRepository(){
|
public static GrigliaDao getGrigliaRepository() {
|
||||||
return appDb.grigliaDao();
|
return appDb.grigliaDao();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ArticoloGrigliaDao getArticoliGrigliaRepository(){
|
public static ArticoloGrigliaDao getArticoliGrigliaRepository() {
|
||||||
return appDb.articoloGrigliaDao();
|
return appDb.articoloGrigliaDao();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static OrdineDao getOrdiniRepository(){
|
public static OrdineDao getOrdiniRepository() {
|
||||||
return appDb.ordineDao();
|
return appDb.ordineDao();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ArticoloOrdineDao getArticoliOrdineRepository(){
|
public static ArticoloOrdineDao getArticoliOrdineRepository() {
|
||||||
return appDb.articoloOrdineDao();
|
return appDb.articoloOrdineDao();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void clearDB() {
|
||||||
|
new Thread(() -> appDb.clearAllTables()).start();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,7 +17,7 @@ import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
|||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
|
||||||
@Database(entities = {ArticoloGriglia.class, Griglia.class, Ordine.class, ArticoloOrdine.class}, version = 3, exportSchema = false)
|
@Database(entities = {ArticoloGriglia.class, Griglia.class, Ordine.class, ArticoloOrdine.class}, version = 2, exportSchema = false)
|
||||||
@TypeConverters({
|
@TypeConverters({
|
||||||
DateConverter.class
|
DateConverter.class
|
||||||
})
|
})
|
||||||
|
|||||||
@ -24,4 +24,13 @@ public interface ArticoloGrigliaDao {
|
|||||||
void updateAll(List<ArticoloGriglia> articoli);
|
void updateAll(List<ArticoloGriglia> articoli);
|
||||||
@Update
|
@Update
|
||||||
void update(ArticoloGriglia articolo);
|
void update(ArticoloGriglia articolo);
|
||||||
|
|
||||||
|
@Query("SELECT * FROM articoli_griglia WHERE bar_code = :barcode AND id_griglia = :idGriglia LIMIT 1")
|
||||||
|
ArticoloGriglia findArticoloByBarcodeAndGriglia(String barcode, int idGriglia);
|
||||||
|
|
||||||
|
@Query("SELECT * FROM articoli_griglia WHERE cod_mart = :codMart AND id_griglia = :idGriglia LIMIT 1")
|
||||||
|
ArticoloGriglia findArticoloByCodMartAndGriglia(String codMart, int idGriglia);
|
||||||
|
|
||||||
|
@Query("SELECT * FROM articoli_griglia WHERE (cod_mart = :scan OR bar_code =:scan )AND id_griglia = :idGriglia LIMIT 1")
|
||||||
|
ArticoloGriglia findArticoloByScanAndGriglia(String scan, int idGriglia);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,15 +1,50 @@
|
|||||||
package it.integry.integrywmsnative.core.data_store.db.dao;
|
package it.integry.integrywmsnative.core.data_store.db.dao;
|
||||||
|
|
||||||
import androidx.room.Dao;
|
import androidx.room.Dao;
|
||||||
|
import androidx.room.Insert;
|
||||||
import androidx.room.Query;
|
import androidx.room.Query;
|
||||||
|
import androidx.room.Update;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
public interface ArticoloOrdineDao {
|
public interface ArticoloOrdineDao {
|
||||||
|
|
||||||
@Query("SELECT * from articoli_ordine")
|
@Query("SELECT * from articoli_ordine")
|
||||||
List<ArticoloOrdine> getAll();
|
List<ArticoloOrdine> getAll();
|
||||||
|
|
||||||
|
@Insert
|
||||||
|
void insertAll(List<ArticoloOrdine> toInsert);
|
||||||
|
|
||||||
|
@Insert
|
||||||
|
void insert(ArticoloOrdine articolo);
|
||||||
|
|
||||||
|
@Query("SELECT * FROM articoli_ordine where bar_code = :barcode and id_ordine = :ordine LIMIT 1")
|
||||||
|
ArticoloOrdine findArticoloByOrdineAndBarcode(int ordine, String barcode);
|
||||||
|
|
||||||
|
@Query( " SELECT articoli_ordine.* " +
|
||||||
|
" FROM articoli_ordine " +
|
||||||
|
" LEFT OUTER JOIN articoli_griglia on articoli_ordine.cod_mart = articoli_griglia.cod_mart " +
|
||||||
|
" WHERE " +
|
||||||
|
" (" +
|
||||||
|
" articoli_ordine.cod_mart = :scan" +
|
||||||
|
" OR articoli_ordine.bar_code = :scan" +
|
||||||
|
" OR articoli_griglia.bar_code = :scan" +
|
||||||
|
" )" +
|
||||||
|
" AND articoli_ordine.id_ordine = :ordine " +
|
||||||
|
" LIMIT 1")
|
||||||
|
ArticoloOrdine findArticoloByScanAndGriglia(int ordine, String scan);
|
||||||
|
|
||||||
|
@Update
|
||||||
|
void updateAll(List<ArticoloOrdine> toUpdate);
|
||||||
|
|
||||||
|
@Update
|
||||||
|
void update(ArticoloOrdine articolo);
|
||||||
|
|
||||||
|
@Query("SELECT * FROM articoli_ordine where id_ordine = :ordineId")
|
||||||
|
List<ArticoloOrdine> findArticoliByOrdine(int ordineId);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.wrappers.GrigliaWrapper;
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
public interface GrigliaDao {
|
public interface GrigliaDao {
|
||||||
@ -17,7 +18,7 @@ public interface GrigliaDao {
|
|||||||
List<Griglia> getAll();
|
List<Griglia> getAll();
|
||||||
|
|
||||||
@Query("SELECT *, COUNT(articoli_griglia.articolo_griglia_id) as countArticoli from griglie LEFT JOIN articoli_griglia ON (griglie.griglia_id = articoli_griglia.id_griglia) where cod_alis = :codAlis GROUP BY griglie.griglia_id")
|
@Query("SELECT *, COUNT(articoli_griglia.articolo_griglia_id) as countArticoli from griglie LEFT JOIN articoli_griglia ON (griglie.griglia_id = articoli_griglia.id_griglia) where cod_alis = :codAlis GROUP BY griglie.griglia_id")
|
||||||
Griglia findByCodAlis(String codAlis);
|
GrigliaWrapper findByCodAlis(String codAlis);
|
||||||
|
|
||||||
@Insert
|
@Insert
|
||||||
long insert(Griglia griglia);
|
long insert(Griglia griglia);
|
||||||
@ -33,4 +34,7 @@ public interface GrigliaDao {
|
|||||||
|
|
||||||
@Delete
|
@Delete
|
||||||
void delete(Griglia griglia);
|
void delete(Griglia griglia);
|
||||||
|
|
||||||
|
@Query("SELECT * from griglie where griglia_id = :idGriglia")
|
||||||
|
Griglia findGrigliaById(int idGriglia);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,19 +1,26 @@
|
|||||||
package it.integry.integrywmsnative.core.data_store.db.dao;
|
package it.integry.integrywmsnative.core.data_store.db.dao;
|
||||||
|
|
||||||
import androidx.room.Dao;
|
import androidx.room.Dao;
|
||||||
|
import androidx.room.Insert;
|
||||||
import androidx.room.Query;
|
import androidx.room.Query;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdineWithGriglia;
|
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdineWithGriglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.wrappers.OrdineWrapper;
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
public interface OrdineDao {
|
public interface OrdineDao {
|
||||||
@Query("SELECT * from ordini ")
|
@Query("SELECT * from ordini ")
|
||||||
List<Ordine> getAll();
|
List<Ordine> getAll();
|
||||||
|
|
||||||
@Query("SELECT ordini.*, griglie.* from ordini inner join griglie ON id_griglia = griglie.griglia_id")
|
@Query("SELECT ordini.*, griglie.* from ordini inner join griglie ON id_griglia = griglie.griglia_id where ordini.transmitted = 1")
|
||||||
List<OrdineWithGriglia> getAllTrasnmitted();
|
List<OrdineWithGriglia> getAllTrasnmitted();
|
||||||
|
|
||||||
|
@Query("SELECT ordini.*, count(articolo_ordine_id) as countArticoli from ordini left join articoli_ordine ON ordini.ordine_id = articoli_ordine.id_ordine where ordini.transmitted = 0 and ordini.id_griglia = :idGriglia group by ordini.ordine_id")
|
||||||
|
List<OrdineWrapper> getAllOpenOrdersByGriglia(int idGriglia);
|
||||||
|
|
||||||
|
@Insert
|
||||||
|
Long insert(Ordine ordine);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,7 +19,7 @@ import androidx.room.PrimaryKey;
|
|||||||
onDelete = ForeignKey.CASCADE
|
onDelete = ForeignKey.CASCADE
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
public class ArticoloGriglia {
|
public class ArticoloGriglia {
|
||||||
@PrimaryKey(autoGenerate = true)
|
@PrimaryKey(autoGenerate = true)
|
||||||
@ColumnInfo(name = "articolo_griglia_id")
|
@ColumnInfo(name = "articolo_griglia_id")
|
||||||
@ -41,7 +41,7 @@ public class ArticoloGriglia {
|
|||||||
private String barCode;
|
private String barCode;
|
||||||
|
|
||||||
@ColumnInfo(name = "merce_da_ric")
|
@ColumnInfo(name = "merce_da_ric")
|
||||||
private int merceDaRic;
|
private float merceDaRic;
|
||||||
|
|
||||||
@ColumnInfo(name = "media_sett")
|
@ColumnInfo(name = "media_sett")
|
||||||
private float mediaSett;
|
private float mediaSett;
|
||||||
@ -50,7 +50,7 @@ public class ArticoloGriglia {
|
|||||||
private String flagQtaMultipla;
|
private String flagQtaMultipla;
|
||||||
|
|
||||||
@ColumnInfo(name = "qta_min_ordinabile")
|
@ColumnInfo(name = "qta_min_ordinabile")
|
||||||
private int qtaMinOrdinabile;
|
private float qtaMinOrdinabile;
|
||||||
|
|
||||||
@ColumnInfo(name = "id_griglia")
|
@ColumnInfo(name = "id_griglia")
|
||||||
private int idGriglia;
|
private int idGriglia;
|
||||||
@ -103,11 +103,11 @@ public class ArticoloGriglia {
|
|||||||
this.barCode = barCode;
|
this.barCode = barCode;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMerceDaRic() {
|
public float getMerceDaRic() {
|
||||||
return merceDaRic;
|
return merceDaRic;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMerceDaRic(int merceDaRic) {
|
public void setMerceDaRic(float merceDaRic) {
|
||||||
this.merceDaRic = merceDaRic;
|
this.merceDaRic = merceDaRic;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -127,11 +127,11 @@ public class ArticoloGriglia {
|
|||||||
this.flagQtaMultipla = flagQtaMultipla;
|
this.flagQtaMultipla = flagQtaMultipla;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getQtaMinOrdinabile() {
|
public float getQtaMinOrdinabile() {
|
||||||
return qtaMinOrdinabile;
|
return qtaMinOrdinabile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setQtaMinOrdinabile(int qtaMinOrdinabile) {
|
public void setQtaMinOrdinabile(float qtaMinOrdinabile) {
|
||||||
this.qtaMinOrdinabile = qtaMinOrdinabile;
|
this.qtaMinOrdinabile = qtaMinOrdinabile;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -142,4 +142,22 @@ public class ArticoloGriglia {
|
|||||||
public void setIdGriglia(int idGriglia) {
|
public void setIdGriglia(int idGriglia) {
|
||||||
this.idGriglia = idGriglia;
|
this.idGriglia = idGriglia;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ArticoloOrdine convertToArticoloOrdine(Ordine ordine) {
|
||||||
|
ArticoloOrdine articolo = new ArticoloOrdine();
|
||||||
|
|
||||||
|
articolo.setIdOrdine(ordine.getOrdineId());
|
||||||
|
|
||||||
|
articolo.setBarCode(this.getBarCode());
|
||||||
|
articolo.setCodMart(this.getCodMart());
|
||||||
|
articolo.setMediaSett(this.getMediaSett());
|
||||||
|
articolo.setFlagQtaMultipla(this.getFlagQtaMultipla());
|
||||||
|
articolo.setQtaMinOrdinabile(this.getQtaMinOrdinabile());
|
||||||
|
articolo.setMerceDaRic(this.getMerceDaRic());
|
||||||
|
articolo.setQtaCnf(this.getQtaCnf());
|
||||||
|
articolo.setUntMis(this.getUntMis());
|
||||||
|
articolo.setDescrizione(this.getDescrizione());
|
||||||
|
|
||||||
|
return articolo;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,7 +9,8 @@ import androidx.room.PrimaryKey;
|
|||||||
@Entity(
|
@Entity(
|
||||||
tableName = "articoli_ordine",
|
tableName = "articoli_ordine",
|
||||||
indices = {
|
indices = {
|
||||||
@Index(value = "id_ordine")
|
@Index(value = "id_ordine"),
|
||||||
|
@Index(value = {"id_ordine","cod_mart"}, unique = true)
|
||||||
},
|
},
|
||||||
foreignKeys = {
|
foreignKeys = {
|
||||||
@ForeignKey(
|
@ForeignKey(
|
||||||
@ -41,7 +42,7 @@ public class ArticoloOrdine {
|
|||||||
private String barCode;
|
private String barCode;
|
||||||
|
|
||||||
@ColumnInfo(name = "merce_da_ric")
|
@ColumnInfo(name = "merce_da_ric")
|
||||||
private int merceDaRic;
|
private float merceDaRic;
|
||||||
|
|
||||||
@ColumnInfo(name = "media_sett")
|
@ColumnInfo(name = "media_sett")
|
||||||
private float mediaSett;
|
private float mediaSett;
|
||||||
@ -50,11 +51,14 @@ public class ArticoloOrdine {
|
|||||||
private String flagQtaMultipla;
|
private String flagQtaMultipla;
|
||||||
|
|
||||||
@ColumnInfo(name = "qta_min_ordinabile")
|
@ColumnInfo(name = "qta_min_ordinabile")
|
||||||
private int qtaMinOrdinabile;
|
private float qtaMinOrdinabile;
|
||||||
|
|
||||||
@ColumnInfo(name = "id_ordine")
|
@ColumnInfo(name = "id_ordine")
|
||||||
private int idOrdine;
|
private int idOrdine;
|
||||||
|
|
||||||
|
@ColumnInfo(name = "qta_ord")
|
||||||
|
private float qtaOtd;
|
||||||
|
|
||||||
public int getArticoloOrdineId() {
|
public int getArticoloOrdineId() {
|
||||||
return articoloOrdineId;
|
return articoloOrdineId;
|
||||||
}
|
}
|
||||||
@ -103,11 +107,11 @@ public class ArticoloOrdine {
|
|||||||
this.barCode = barCode;
|
this.barCode = barCode;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMerceDaRic() {
|
public float getMerceDaRic() {
|
||||||
return merceDaRic;
|
return merceDaRic;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMerceDaRic(int merceDaRic) {
|
public void setMerceDaRic(float merceDaRic) {
|
||||||
this.merceDaRic = merceDaRic;
|
this.merceDaRic = merceDaRic;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -127,11 +131,11 @@ public class ArticoloOrdine {
|
|||||||
this.flagQtaMultipla = flagQtaMultipla;
|
this.flagQtaMultipla = flagQtaMultipla;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getQtaMinOrdinabile() {
|
public float getQtaMinOrdinabile() {
|
||||||
return qtaMinOrdinabile;
|
return qtaMinOrdinabile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setQtaMinOrdinabile(int qtaMinOrdinabile) {
|
public void setQtaMinOrdinabile(float qtaMinOrdinabile) {
|
||||||
this.qtaMinOrdinabile = qtaMinOrdinabile;
|
this.qtaMinOrdinabile = qtaMinOrdinabile;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -142,4 +146,12 @@ public class ArticoloOrdine {
|
|||||||
public void setIdOrdine(int idOrdine) {
|
public void setIdOrdine(int idOrdine) {
|
||||||
this.idOrdine = idOrdine;
|
this.idOrdine = idOrdine;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public float getQtaOtd() {
|
||||||
|
return qtaOtd;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setQtaOtd(float qtaOtd) {
|
||||||
|
this.qtaOtd = qtaOtd;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,9 +3,8 @@ package it.integry.integrywmsnative.core.data_store.db.entity;
|
|||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.room.ColumnInfo;
|
import androidx.room.ColumnInfo;
|
||||||
import androidx.room.Entity;
|
import androidx.room.Entity;
|
||||||
|
import androidx.room.Ignore;
|
||||||
import androidx.room.PrimaryKey;
|
import androidx.room.PrimaryKey;
|
||||||
import androidx.room.TypeConverter;
|
|
||||||
import androidx.room.TypeConverters;
|
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
@ -30,6 +29,9 @@ public class Ordine {
|
|||||||
@Nullable
|
@Nullable
|
||||||
private Date transmissionDate;
|
private Date transmissionDate;
|
||||||
|
|
||||||
|
@Ignore
|
||||||
|
private int countArticoli = 0;
|
||||||
|
|
||||||
@ColumnInfo(name = "id_griglia")
|
@ColumnInfo(name = "id_griglia")
|
||||||
private int idGriglia;
|
private int idGriglia;
|
||||||
|
|
||||||
@ -81,4 +83,12 @@ public class Ordine {
|
|||||||
public void setTransmissionDate(@Nullable Date transmissionDate) {
|
public void setTransmissionDate(@Nullable Date transmissionDate) {
|
||||||
this.transmissionDate = transmissionDate;
|
this.transmissionDate = transmissionDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getCountArticoli() {
|
||||||
|
return countArticoli;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCountArticoli(int countArticoli) {
|
||||||
|
this.countArticoli = countArticoli;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,7 +25,6 @@ public class ArticoliGrigliaRepository extends Repository{
|
|||||||
List<ArticoloGriglia> toUpdate = new ArrayList<>();
|
List<ArticoloGriglia> toUpdate = new ArrayList<>();
|
||||||
List<ArticoloGriglia> toInsert = new ArrayList<>();
|
List<ArticoloGriglia> toInsert = new ArrayList<>();
|
||||||
for (ArticoloGriglia art : articoli){
|
for (ArticoloGriglia art : articoli){
|
||||||
|
|
||||||
Integer id = mRepository.getIdArticoloByGrigliaAndCodMart(art.getIdGriglia(),art.getCodMart());
|
Integer id = mRepository.getIdArticoloByGrigliaAndCodMart(art.getIdGriglia(),art.getCodMart());
|
||||||
if (id != null){
|
if (id != null){
|
||||||
art.setArticoloGrigliaId(id);
|
art.setArticoloGrigliaId(id);
|
||||||
@ -37,8 +36,34 @@ public class ArticoliGrigliaRepository extends Repository{
|
|||||||
mRepository.insertAll(toInsert);
|
mRepository.insertAll(toInsert);
|
||||||
mRepository.updateAll(toUpdate);
|
mRepository.updateAll(toUpdate);
|
||||||
onSuccess.run();
|
onSuccess.run();
|
||||||
|
}catch (Exception e){
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void findArticoloByBarcodeAndGriglia(String barcode, int idGriglia,RunnableArgs<ArticoloGriglia> onSuccess, RunnableArgs<Exception> onFail ){
|
||||||
|
execute(()->{
|
||||||
|
try{
|
||||||
|
onSuccess.run(mRepository.findArticoloByBarcodeAndGriglia(barcode, idGriglia));
|
||||||
|
}catch (Exception e){
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
public void findArticoloByCodMartAndGriglia(String codMart, int idGriglia,RunnableArgs<ArticoloGriglia> onSuccess, RunnableArgs<Exception> onFail ){
|
||||||
|
execute(()->{
|
||||||
|
try{
|
||||||
|
onSuccess.run(mRepository.findArticoloByCodMartAndGriglia(codMart, idGriglia));
|
||||||
|
}catch (Exception e){
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
public void findArticoloByScanAndGriglia(String scan, int idGriglia,RunnableArgs<ArticoloGriglia> onSuccess, RunnableArgs<Exception> onFail ){
|
||||||
|
execute(()->{
|
||||||
|
try{
|
||||||
|
onSuccess.run(mRepository.findArticoloByScanAndGriglia(scan, idGriglia));
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
onFail.run(e);
|
onFail.run(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,75 @@
|
|||||||
|
package it.integry.integrywmsnative.core.data_store.db.repository;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.MainApplication;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.dao.ArticoloGrigliaDao;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.dao.ArticoloOrdineDao;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
|
||||||
|
public class ArticoliOrdineRepository extends Repository {
|
||||||
|
|
||||||
|
ArticoloOrdineDao mRepository;
|
||||||
|
|
||||||
|
public ArticoliOrdineRepository() {
|
||||||
|
this.mRepository = MainApplication.getArticoliOrdineRepository();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void saveArticoliToOrdine(List<ArticoloOrdine> articoli, Runnable onSuccess, RunnableArgs<Exception> onFail) {
|
||||||
|
execute(() -> {
|
||||||
|
try {
|
||||||
|
List<ArticoloOrdine> toUpdate = new ArrayList<>();
|
||||||
|
List<ArticoloOrdine> toInsert = new ArrayList<>();
|
||||||
|
for (ArticoloOrdine art : articoli) {
|
||||||
|
if (art.getArticoloOrdineId() > 0) {
|
||||||
|
toUpdate.add(art);
|
||||||
|
} else {
|
||||||
|
toInsert.add(art);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mRepository.insertAll(toInsert);
|
||||||
|
mRepository.updateAll(toUpdate);
|
||||||
|
onSuccess.run();
|
||||||
|
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void findArticoloByOrdineAndBarcode(Ordine ordine, String barcode, RunnableArgs<ArticoloOrdine> onSuccess, RunnableArgs<Exception> onFail) {
|
||||||
|
execute(() -> {
|
||||||
|
try {
|
||||||
|
ArticoloOrdine articolo = mRepository.findArticoloByOrdineAndBarcode(ordine.getOrdineId(), barcode);
|
||||||
|
onSuccess.run(articolo);
|
||||||
|
} catch (Exception e) {
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
public void findArticoloByScanAndGriglia(Ordine ordine, String barcode, RunnableArgs<ArticoloOrdine> onSuccess, RunnableArgs<Exception> onFail) {
|
||||||
|
execute(() -> {
|
||||||
|
try {
|
||||||
|
ArticoloOrdine articolo = mRepository.findArticoloByScanAndGriglia(ordine.getOrdineId(), barcode);
|
||||||
|
onSuccess.run(articolo);
|
||||||
|
} catch (Exception e) {
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void findArticoliByOrdine(Ordine ordine, RunnableArgs<List<ArticoloOrdine>> onLoad, RunnableArgs<Exception> onError) {
|
||||||
|
execute(() -> {
|
||||||
|
try {
|
||||||
|
onLoad.run(mRepository.findArticoliByOrdine(ordine.getOrdineId()));
|
||||||
|
} catch (Exception e) {
|
||||||
|
onError.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -5,6 +5,8 @@ import java.util.List;
|
|||||||
import it.integry.integrywmsnative.MainApplication;
|
import it.integry.integrywmsnative.MainApplication;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.dao.GrigliaDao;
|
import it.integry.integrywmsnative.core.data_store.db.dao.GrigliaDao;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.wrappers.GrigliaWrapper;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.BaseActivity;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
|
||||||
public class GrigliaRepository extends Repository{
|
public class GrigliaRepository extends Repository{
|
||||||
@ -26,7 +28,7 @@ public class GrigliaRepository extends Repository{
|
|||||||
execute(query);
|
execute(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void findByCodAlis(String codAlis ,RunnableArgs<Griglia> onSuccess, RunnableArgs<Exception> onError){
|
public void findByCodAlis(String codAlis , RunnableArgs<GrigliaWrapper> onSuccess, RunnableArgs<Exception> onError){
|
||||||
Runnable query = ()->{
|
Runnable query = ()->{
|
||||||
try{
|
try{
|
||||||
onSuccess.run(mRepository.findByCodAlis(codAlis));
|
onSuccess.run(mRepository.findByCodAlis(codAlis));
|
||||||
@ -52,4 +54,14 @@ public class GrigliaRepository extends Repository{
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void findGrigliaById(int idGriglia, RunnableArgs<Griglia> onLoad, RunnableArgs<Exception> onFail) {
|
||||||
|
execute(()->{
|
||||||
|
try{
|
||||||
|
onLoad.run(mRepository.findGrigliaById(idGriglia));
|
||||||
|
}catch (Exception e){
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,13 +4,15 @@ import java.util.List;
|
|||||||
|
|
||||||
import it.integry.integrywmsnative.MainApplication;
|
import it.integry.integrywmsnative.MainApplication;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.dao.OrdineDao;
|
import it.integry.integrywmsnative.core.data_store.db.dao.OrdineDao;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdineWithGriglia;
|
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdineWithGriglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.wrappers.OrdineWrapper;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
|
||||||
public class OrdineRepository extends Repository{
|
public class OrdineRepository extends Repository{
|
||||||
|
|
||||||
OrdineDao mRepository;
|
private OrdineDao mRepository;
|
||||||
|
|
||||||
public OrdineRepository() {
|
public OrdineRepository() {
|
||||||
this.mRepository = MainApplication.getOrdiniRepository();
|
this.mRepository = MainApplication.getOrdiniRepository();
|
||||||
@ -37,5 +39,27 @@ public class OrdineRepository extends Repository{
|
|||||||
execute(query);
|
execute(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void selectAllOpenOrders(Griglia griglia, RunnableArgs<List<OrdineWrapper>> onSuccess, RunnableArgs<Exception> onError){
|
||||||
|
Runnable query = ()->{
|
||||||
|
try{
|
||||||
|
onSuccess.run(mRepository.getAllOpenOrdersByGriglia(griglia.getGrigliaId()));
|
||||||
|
}catch (Exception e){
|
||||||
|
onError.run(e);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
execute(query);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void insert(Ordine ordine, RunnableArgs<Integer> onSuccess, RunnableArgs<Exception> onError){
|
||||||
|
execute(()->{
|
||||||
|
try{
|
||||||
|
Long id = mRepository.insert(ordine);
|
||||||
|
onSuccess.run(id.intValue());
|
||||||
|
}catch (Exception e){
|
||||||
|
onError.run(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,7 +19,7 @@ public class ArticoloDTO {
|
|||||||
private String barcode;
|
private String barcode;
|
||||||
|
|
||||||
|
|
||||||
private int merceDaRic;
|
private float merceDaRic;
|
||||||
|
|
||||||
|
|
||||||
private float mediaSett;
|
private float mediaSett;
|
||||||
@ -27,7 +27,7 @@ public class ArticoloDTO {
|
|||||||
|
|
||||||
private String flagQtaMultipla;
|
private String flagQtaMultipla;
|
||||||
|
|
||||||
private int qtaMinOrdinabile;
|
private float qtaMinOrdinabile;
|
||||||
|
|
||||||
public String getCodMart() {
|
public String getCodMart() {
|
||||||
return codMart;
|
return codMart;
|
||||||
@ -69,11 +69,11 @@ public class ArticoloDTO {
|
|||||||
this.barcode = barCode;
|
this.barcode = barCode;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMerceDaRic() {
|
public float getMerceDaRic() {
|
||||||
return merceDaRic;
|
return merceDaRic;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMerceDaRic(int merceDaRic) {
|
public void setMerceDaRic(float merceDaRic) {
|
||||||
this.merceDaRic = merceDaRic;
|
this.merceDaRic = merceDaRic;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,11 +93,11 @@ public class ArticoloDTO {
|
|||||||
this.flagQtaMultipla = flagQtaMultipla;
|
this.flagQtaMultipla = flagQtaMultipla;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getQtaMinOrdinabile() {
|
public float getQtaMinOrdinabile() {
|
||||||
return qtaMinOrdinabile;
|
return qtaMinOrdinabile;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setQtaMinOrdinabile(int qtaMinOrdinabile) {
|
public void setQtaMinOrdinabile(float qtaMinOrdinabile) {
|
||||||
this.qtaMinOrdinabile = qtaMinOrdinabile;
|
this.qtaMinOrdinabile = qtaMinOrdinabile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -14,12 +14,6 @@ public class OrdineWithGriglia {
|
|||||||
@Embedded
|
@Embedded
|
||||||
private Griglia griglia;
|
private Griglia griglia;
|
||||||
|
|
||||||
@Ignore
|
|
||||||
public BindableBoolean selected;
|
|
||||||
|
|
||||||
public OrdineWithGriglia() {
|
|
||||||
this.selected = new BindableBoolean(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
public Ordine getOrdine() {
|
public Ordine getOrdine() {
|
||||||
return ordine;
|
return ordine;
|
||||||
@ -36,13 +30,4 @@ public class OrdineWithGriglia {
|
|||||||
public void setGriglia(Griglia griglia) {
|
public void setGriglia(Griglia griglia) {
|
||||||
this.griglia = griglia;
|
this.griglia = griglia;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isSelected() {
|
|
||||||
return selected.get();
|
|
||||||
}
|
|
||||||
|
|
||||||
public OrdineWithGriglia setSelected(boolean selected) {
|
|
||||||
this.selected.set(selected);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,28 @@
|
|||||||
|
package it.integry.integrywmsnative.core.data_store.db.wrappers;
|
||||||
|
|
||||||
|
import androidx.room.Embedded;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
|
||||||
|
public class GrigliaWrapper {
|
||||||
|
@Embedded
|
||||||
|
private Griglia griglia;
|
||||||
|
|
||||||
|
private int countArticoli = 0;
|
||||||
|
|
||||||
|
public Griglia getGriglia() {
|
||||||
|
return griglia;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGriglia(Griglia griglia) {
|
||||||
|
this.griglia = griglia;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getCountArticoli() {
|
||||||
|
return countArticoli;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCountArticoli(int countArticoli) {
|
||||||
|
this.countArticoli = countArticoli;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,29 @@
|
|||||||
|
package it.integry.integrywmsnative.core.data_store.db.wrappers;
|
||||||
|
|
||||||
|
import androidx.room.Embedded;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
|
||||||
|
public class OrdineWrapper {
|
||||||
|
|
||||||
|
@Embedded
|
||||||
|
private Ordine ordine;
|
||||||
|
|
||||||
|
private int countArticoli = 0;
|
||||||
|
|
||||||
|
public Ordine getOrdine() {
|
||||||
|
return ordine;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrdine(Ordine ordine) {
|
||||||
|
this.ordine = ordine;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getCountArticoli() {
|
||||||
|
return countArticoli;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCountArticoli(int countArticoli) {
|
||||||
|
this.countArticoli = countArticoli;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -2,6 +2,13 @@ package it.integry.integrywmsnative.core.rest.consumers;
|
|||||||
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.annimon.stream.Stream;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloDTO;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.view_model.GrigliaDTO;
|
import it.integry.integrywmsnative.core.data_store.db.view_model.GrigliaDTO;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.rest.RESTBuilder;
|
import it.integry.integrywmsnative.core.rest.RESTBuilder;
|
||||||
@ -18,14 +25,34 @@ public class PVOrdiniAcquistoRESTConsumer extends _BaseRESTConsumer {
|
|||||||
|
|
||||||
|
|
||||||
public static void getArticoliListino(String codAlis, RunnableArgs<GrigliaDTO> onSuccess, RunnableArgs<Exception> onFailed) {
|
public static void getArticoliListino(String codAlis, RunnableArgs<GrigliaDTO> onSuccess, RunnableArgs<Exception> onFailed) {
|
||||||
|
|
||||||
PVOrdiniAcquistoRESTConsumerService ordiniARestService = RESTBuilder.getService(PVOrdiniAcquistoRESTConsumerService.class);
|
PVOrdiniAcquistoRESTConsumerService ordiniARestService = RESTBuilder.getService(PVOrdiniAcquistoRESTConsumerService.class);
|
||||||
ordiniARestService
|
ordiniARestService
|
||||||
.getArticoliListino(codAlis, SettingsManager.i().userSession.profileDB, SettingsManager.i().user.username, SettingsManager.i().user.password)
|
.getArticoliListino(codAlis, SettingsManager.i().userSession.profileDB, SettingsManager.i().user.username, SettingsManager.i().user.password)
|
||||||
.enqueue(new Callback<ServiceRESTResponse<GrigliaDTO>>() {
|
.enqueue(new Callback<ServiceRESTResponse<GrigliaDTO>>() {
|
||||||
@Override
|
@Override
|
||||||
public void onResponse(Call<ServiceRESTResponse<GrigliaDTO>> call, Response<ServiceRESTResponse<GrigliaDTO>> response) {
|
public void onResponse(Call<ServiceRESTResponse<GrigliaDTO>> call, Response<ServiceRESTResponse<GrigliaDTO>> response) {
|
||||||
analyzeAnswer(response,"getArticoliListino",onSuccess,onFailed);
|
analyzeAnswer(response, "getArticoliListino", griglia -> {
|
||||||
|
|
||||||
|
List<ArticoloDTO> listaArticoli = new ArrayList<>();
|
||||||
|
Stream.of(griglia.getGrigliaAcquistiChild())
|
||||||
|
.map(ArticoloDTO::getCodMart)
|
||||||
|
.distinct()
|
||||||
|
.withoutNulls()
|
||||||
|
.forEach(art -> {
|
||||||
|
List<ArticoloDTO> inList = Stream.of(griglia.getGrigliaAcquistiChild()).filter(x -> x.getCodMart().equalsIgnoreCase(art)).toList();
|
||||||
|
if (inList.size() > 1){
|
||||||
|
for (ArticoloDTO articolo : inList){
|
||||||
|
if (!articolo.getBarCode().endsWith(articolo.getCodMart())){
|
||||||
|
listaArticoli.add(articolo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
listaArticoli.add(inList.get(0));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
griglia.setGrigliaAcquistiChild(listaArticoli);
|
||||||
|
onSuccess.run(griglia);
|
||||||
|
}, onFailed);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -20,6 +20,11 @@ public class UtilityProgress {
|
|||||||
progress.show();
|
progress.show();
|
||||||
return progress;
|
return progress;
|
||||||
}
|
}
|
||||||
|
public static Dialog createDefaultProgressDialog(Context mContext,String subtitle) {
|
||||||
|
Dialog progress = DialogProgress.make(mContext,subtitle);
|
||||||
|
progress.show();
|
||||||
|
return progress;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public static Thread makeProgressBarIndeterminate(ProgressBar progressBar) {
|
public static Thread makeProgressBarIndeterminate(ProgressBar progressBar) {
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
package it.integry.integrywmsnative.core.utility;
|
package it.integry.integrywmsnative.core.utility;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.MainApplication;
|
||||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||||
import it.integry.integrywmsnative.core.settings.SettingsModel;
|
import it.integry.integrywmsnative.core.settings.SettingsModel;
|
||||||
|
|
||||||
@ -9,7 +10,7 @@ public class UtilitySettings {
|
|||||||
public static void logout(){
|
public static void logout(){
|
||||||
SettingsManager.i().user = null;
|
SettingsManager.i().user = null;
|
||||||
SettingsManager.i().userSession = null;
|
SettingsManager.i().userSession = null;
|
||||||
|
MainApplication.clearDB();
|
||||||
SettingsManager.update();
|
SettingsManager.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,35 +1,60 @@
|
|||||||
package it.integry.integrywmsnative.gest.ordini_acquisto_pv;
|
package it.integry.integrywmsnative.gest.ordini_acquisto_pv;
|
||||||
|
|
||||||
|
import android.app.Dialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.Html;
|
|
||||||
import android.text.SpannableString;
|
import android.text.SpannableString;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
import androidx.appcompat.widget.AppCompatTextView;
|
import androidx.appcompat.widget.AppCompatTextView;
|
||||||
|
import androidx.core.content.ContextCompat;
|
||||||
import androidx.databinding.DataBindingUtil;
|
import androidx.databinding.DataBindingUtil;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
|
import androidx.recyclerview.widget.DividerItemDecoration;
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.R;
|
import it.integry.integrywmsnative.R;
|
||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
|
import it.integry.integrywmsnative.core.data_cache.DataCache;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.repository.OrdineRepository;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.wrappers.OrdineWrapper;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.interfaces.IPoppableActivity;
|
import it.integry.integrywmsnative.core.interfaces.IPoppableActivity;
|
||||||
|
import it.integry.integrywmsnative.core.interfaces.IScrollableFragment;
|
||||||
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
||||||
|
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||||
import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoBinding;
|
import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoBinding;
|
||||||
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdiniAcquistoElencoHelper;
|
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdineAcquistoPvOpenListAdapter;
|
||||||
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.dialogs.DialogScanLisA;
|
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.dialogs.DialogScanLisA;
|
||||||
|
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.helper.OrdineAcquistoPvHelper;
|
||||||
|
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.PVOrdineAcquistoEditActivity;
|
||||||
|
import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
|
||||||
|
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
||||||
|
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInevasoActivity;
|
||||||
|
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
||||||
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
||||||
|
|
||||||
public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitledFragment {
|
public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitledFragment, IScrollableFragment {
|
||||||
|
|
||||||
private FragmentPvOrdiniAcquistoBinding mBinding;
|
private FragmentPvOrdiniAcquistoBinding mBinding;
|
||||||
private OrdiniAcquistoElencoHelper mHelper;
|
private OrdineAcquistoPvHelper mHelper;
|
||||||
private Griglia mGriglia;
|
private Griglia mGriglia;
|
||||||
|
private OrdineAcquistoPvOpenListAdapter mAdapter;
|
||||||
|
private List<OrdineWrapper> mRenderedOrderList = new ArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
public PVOrdiniAcquistoGrigliaFragment() {
|
public PVOrdiniAcquistoGrigliaFragment() {
|
||||||
|
mHelper = new OrdineAcquistoPvHelper(getActivity());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PVOrdiniAcquistoGrigliaFragment newInstance() {
|
public static PVOrdiniAcquistoGrigliaFragment newInstance() {
|
||||||
@ -40,12 +65,14 @@ public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitled
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
|
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||||
// Inflate the layout for this fragment
|
// Inflate the layout for this fragment
|
||||||
|
|
||||||
mBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_pv_ordini_acquisto, container, false);
|
mBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_pv_ordini_acquisto, container, false);
|
||||||
|
mBinding.setViewmodel(this);
|
||||||
|
|
||||||
init();
|
init();
|
||||||
|
initRecyclerView();
|
||||||
return mBinding.getRoot();
|
return mBinding.getRoot();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -53,7 +80,7 @@ public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitled
|
|||||||
|
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
DialogScanLisA.make(getActivity(), griglia -> {
|
DialogScanLisA.make(getActivity(), griglia -> {
|
||||||
if(griglia == null) {
|
if (griglia == null) {
|
||||||
((IPoppableActivity) getActivity()).pop();
|
((IPoppableActivity) getActivity()).pop();
|
||||||
} else {
|
} else {
|
||||||
setGriglia(griglia);
|
setGriglia(griglia);
|
||||||
@ -67,7 +94,84 @@ public class PVOrdiniAcquistoGrigliaFragment extends Fragment implements ITitled
|
|||||||
titleText.setText(context.getText(R.string.pv_elenco_ordiniA_title_fragment).toString());
|
titleText.setText(context.getText(R.string.pv_elenco_ordiniA_title_fragment).toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setGriglia(Griglia griglia){
|
private void setGriglia(Griglia griglia) {
|
||||||
mGriglia = griglia;
|
mGriglia = griglia;
|
||||||
|
mBinding.fabNewOrder.setVisibility(View.VISIBLE);
|
||||||
|
mBinding.codAlis.setText(griglia.getCodAlis());
|
||||||
|
mBinding.descrLis.setText(griglia.getDescrLisa());
|
||||||
|
mBinding.countArtLis.setText(String.valueOf(griglia.getCountArticoli()));
|
||||||
|
|
||||||
|
fetchOrders();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void fetchOrders() {
|
||||||
|
final Dialog progress = UtilityProgress.createDefaultProgressDialog(getActivity(), getString(R.string.ordini_a_aperti_progress));
|
||||||
|
OrdineRepository repository = new OrdineRepository();
|
||||||
|
repository.selectAllOpenOrders(mGriglia, (ordini) -> getActivity().runOnUiThread(() -> {
|
||||||
|
progress.dismiss();
|
||||||
|
setOrdini(ordini);
|
||||||
|
}), (e) -> {
|
||||||
|
progress.dismiss();
|
||||||
|
String errorMessage = e.getMessage();
|
||||||
|
getActivity().runOnUiThread(() -> DialogSimpleMessageHelper.makeErrorDialog(getActivity(), new SpannableString(errorMessage), null, null).show());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setOrdini(List<OrdineWrapper> ordini) {
|
||||||
|
mBinding.ordiniAApertiMainList.setVisibility(ordini != null && ordini.size() > 0 ? View.VISIBLE : View.GONE);
|
||||||
|
mBinding.ordiniAEmptyView.setVisibility(ordini == null || ordini.size() <= 0 ? View.VISIBLE : View.GONE);
|
||||||
|
refreshRenderedOrdini(ordini);
|
||||||
|
mAdapter.updateItems(mRenderedOrderList);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Griglia getGriglia() {
|
||||||
|
return mGriglia;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initRecyclerView() {
|
||||||
|
mBinding.ordiniAApertiMainList.setHasFixedSize(true);
|
||||||
|
|
||||||
|
mBinding.ordiniAApertiMainList.setLayoutManager(new LinearLayoutManager(getActivity()));
|
||||||
|
|
||||||
|
DividerItemDecoration itemDecorator = new DividerItemDecoration(getActivity(), DividerItemDecoration.VERTICAL);
|
||||||
|
itemDecorator.setDrawable(ContextCompat.getDrawable(getActivity(), R.drawable.divider));
|
||||||
|
mBinding.ordiniAApertiMainList.addItemDecoration(itemDecorator);
|
||||||
|
mAdapter = new OrdineAcquistoPvOpenListAdapter(getActivity(), mRenderedOrderList, selectOrdine);
|
||||||
|
mBinding.ordiniAApertiMainList.setAdapter(mAdapter);
|
||||||
|
}
|
||||||
|
|
||||||
|
private RunnableArgs<Ordine> selectOrdine = ordine -> {
|
||||||
|
|
||||||
|
Intent myIntent = new Intent(getActivity(), PVOrdineAcquistoEditActivity.class);
|
||||||
|
|
||||||
|
String keyOrdine = DataCache.addItem(ordine);
|
||||||
|
myIntent.putExtra("keyOrdine", keyOrdine);
|
||||||
|
|
||||||
|
getActivity().startActivity(myIntent);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
private void refreshRenderedOrdini(List<OrdineWrapper> ordini) {
|
||||||
|
mRenderedOrderList.clear();
|
||||||
|
if (ordini != null) mRenderedOrderList.addAll(ordini);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void createNewOrder() {
|
||||||
|
final Dialog progress = UtilityProgress.createDefaultProgressDialog(getActivity(), getString(R.string.ordini_a_aperti_progress));
|
||||||
|
mHelper.createNewOrder(mGriglia, order -> {
|
||||||
|
progress.dismiss();
|
||||||
|
getActivity().runOnUiThread(this::fetchOrders);
|
||||||
|
|
||||||
|
}, e -> getActivity().runOnUiThread(() -> UtilityExceptions.defaultException(getActivity(), e, progress)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setScrollToolbar(ElevatedToolbar toolbar) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setOnPreDestroy(Runnable onPreDestroy) {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,7 +24,6 @@ import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
|||||||
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||||
import it.integry.integrywmsnative.databinding.FragmentPvOrdiniATrasmessiElencoBinding;
|
import it.integry.integrywmsnative.databinding.FragmentPvOrdiniATrasmessiElencoBinding;
|
||||||
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdineAcquistoPvTransmittedListAdapter;
|
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdineAcquistoPvTransmittedListAdapter;
|
||||||
import it.integry.integrywmsnative.gest.ordini_acquisto_pv.core.OrdiniAcquistoElencoHelper;
|
|
||||||
import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.dialog.DialogOrdineProduzioneFiltroAvanzato;
|
import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.dialog.DialogOrdineProduzioneFiltroAvanzato;
|
||||||
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
import it.integry.integrywmsnative.ui.ElevatedToolbar;
|
||||||
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
||||||
@ -32,15 +31,11 @@ import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
|
|||||||
public class PVOrdiniAcquistoTransmittedListFragment extends Fragment implements ITitledFragment, IScrollableFragment, IFilterableFragment {
|
public class PVOrdiniAcquistoTransmittedListFragment extends Fragment implements ITitledFragment, IScrollableFragment, IFilterableFragment {
|
||||||
|
|
||||||
private FragmentPvOrdiniATrasmessiElencoBinding mBinding;
|
private FragmentPvOrdiniATrasmessiElencoBinding mBinding;
|
||||||
private OrdiniAcquistoElencoHelper mHelper;
|
|
||||||
private ElevatedToolbar mToolbar;
|
|
||||||
private OrdineAcquistoPvTransmittedListAdapter mAdapter;
|
private OrdineAcquistoPvTransmittedListAdapter mAdapter;
|
||||||
|
|
||||||
private List<OrdineWithGriglia> mOriginalOrderList;
|
private List<OrdineWithGriglia> mOriginalOrderList;
|
||||||
private List<OrdineWithGriglia> mRenderedOrderList = new ArrayList<>();
|
private List<OrdineWithGriglia> mRenderedOrderList = new ArrayList<>();
|
||||||
|
|
||||||
private AppCompatTextView mAppBarTitle;
|
|
||||||
|
|
||||||
private DialogOrdineProduzioneFiltroAvanzato.DialogOrdineProduzioneFiltroAvanzatoViewModel mAppliedFilterViewModel;
|
private DialogOrdineProduzioneFiltroAvanzato.DialogOrdineProduzioneFiltroAvanzatoViewModel mAppliedFilterViewModel;
|
||||||
|
|
||||||
public PVOrdiniAcquistoTransmittedListFragment() {
|
public PVOrdiniAcquistoTransmittedListFragment() {
|
||||||
|
|||||||
@ -0,0 +1,135 @@
|
|||||||
|
package it.integry.integrywmsnative.gest.ordini_acquisto_pv.core;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.text.Html;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
|
import com.annimon.stream.Stream;
|
||||||
|
import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.R;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.view_model.OrdineWithGriglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.wrappers.OrdineWrapper;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||||
|
import it.integry.integrywmsnative.databinding.FragmentOrdineAPvTransmittedListModelBinding;
|
||||||
|
import it.integry.integrywmsnative.databinding.FragmentOrdiniAPvListSingleItemBinding;
|
||||||
|
import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoListHeaderBinding;
|
||||||
|
import it.integry.integrywmsnative.databinding.FragmentPvOrdiniAcquistoListSingleItemBinding;
|
||||||
|
import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider;
|
||||||
|
|
||||||
|
public class OrdineAcquistoPvOpenListAdapter extends SectionedRecyclerViewAdapter<OrdineAcquistoPvOpenListAdapter.SubheaderHolder, OrdineAcquistoPvOpenListAdapter.SingleItemViewHolder> implements SectionTitleProvider {
|
||||||
|
|
||||||
|
|
||||||
|
private Context mContext;
|
||||||
|
|
||||||
|
private List<OrdineWrapper> mDataset;
|
||||||
|
RunnableArgs<Ordine> mOnItemSelect;
|
||||||
|
|
||||||
|
|
||||||
|
static class SubheaderHolder extends RecyclerView.ViewHolder {
|
||||||
|
|
||||||
|
FragmentPvOrdiniAcquistoListHeaderBinding binding;
|
||||||
|
|
||||||
|
SubheaderHolder(FragmentPvOrdiniAcquistoListHeaderBinding binding) {
|
||||||
|
super(binding.getRoot());
|
||||||
|
this.binding = binding;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static class SingleItemViewHolder extends RecyclerView.ViewHolder {
|
||||||
|
|
||||||
|
FragmentPvOrdiniAcquistoListSingleItemBinding binding;
|
||||||
|
|
||||||
|
SingleItemViewHolder(FragmentPvOrdiniAcquistoListSingleItemBinding binding) {
|
||||||
|
super(binding.getRoot());
|
||||||
|
this.binding = binding;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public OrdineAcquistoPvOpenListAdapter(Context context, List<OrdineWrapper> myDataset, RunnableArgs<Ordine> onItemSelect) {
|
||||||
|
mContext = context;
|
||||||
|
mDataset = orderItems(myDataset);
|
||||||
|
mOnItemSelect = onItemSelect;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void updateItems(List<OrdineWrapper> updatedDataset) {
|
||||||
|
mDataset.clear();
|
||||||
|
mDataset.addAll(orderItems(updatedDataset));
|
||||||
|
notifyDataSetChanged();
|
||||||
|
notifyDataChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private List<OrdineWrapper> orderItems(List<OrdineWrapper> dataset) {
|
||||||
|
return Stream.of(dataset)
|
||||||
|
.distinctBy(OrdineWrapper::getOrdine)
|
||||||
|
.sortBy(x -> UtilityDate.formatDate(x.getOrdine().getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH))
|
||||||
|
.toList();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SubheaderHolder onCreateSubheaderViewHolder(ViewGroup parent, int viewType) {
|
||||||
|
FragmentPvOrdiniAcquistoListHeaderBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.fragment_pv_ordini_acquisto__list_header, parent, false);
|
||||||
|
return new SubheaderHolder(binding);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SingleItemViewHolder onCreateItemViewHolder(ViewGroup parent, int viewType) {
|
||||||
|
FragmentPvOrdiniAcquistoListSingleItemBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.fragment_pv_ordini_acquisto__list_single_item, parent, false);
|
||||||
|
return new SingleItemViewHolder(binding);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBindSubheaderViewHolder(OrdineAcquistoPvOpenListAdapter.SubheaderHolder subheaderHolder, int nextItemPosition) {
|
||||||
|
subheaderHolder.binding.title.setText(mContext.getString(R.string.ordini_a_aperti));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBindItemViewHolder(OrdineAcquistoPvOpenListAdapter.SingleItemViewHolder h, int itemPosition) {
|
||||||
|
final OrdineWrapper ordineWrapper = mDataset.get(itemPosition);
|
||||||
|
final Ordine ordine = ordineWrapper.getOrdine();
|
||||||
|
final OrdineAcquistoPvOpenListAdapter.SingleItemViewHolder holder = h;
|
||||||
|
|
||||||
|
|
||||||
|
String testataOrdString = String.format(mContext.getString(R.string.ord_acq_testata), String.valueOf(ordine.getOrdineId()), UtilityDate.formatDate(ordine.getDataOrd(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
|
||||||
|
|
||||||
|
holder.binding.numArts.setText(String.format(mContext.getString(R.string.ord_acq_num_articoli), String.valueOf(ordineWrapper.getCountArticoli())));
|
||||||
|
|
||||||
|
holder.binding.orderIdentifier.setText(Html.fromHtml(testataOrdString));
|
||||||
|
|
||||||
|
holder.binding.getRoot().setOnClickListener(v -> {
|
||||||
|
mOnItemSelect.run(ordine);
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onPlaceSubheaderBetweenItems(int position) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getItemSize() {
|
||||||
|
return mDataset.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getSectionTitle(int position) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -1,13 +0,0 @@
|
|||||||
package it.integry.integrywmsnative.gest.ordini_acquisto_pv.core;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
|
|
||||||
public class OrdiniAcquistoElencoHelper {
|
|
||||||
|
|
||||||
private Context mContext;
|
|
||||||
|
|
||||||
public OrdiniAcquistoElencoHelper(Context context) {
|
|
||||||
this.mContext = context;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,11 +1,13 @@
|
|||||||
package it.integry.integrywmsnative.gest.ordini_acquisto_pv.dialogs;
|
package it.integry.integrywmsnative.gest.ordini_acquisto_pv.dialogs;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.app.Dialog;
|
import android.app.Dialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.graphics.drawable.ColorDrawable;
|
import android.graphics.drawable.ColorDrawable;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
|
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
import androidx.databinding.DataBindingUtil;
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
|
||||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||||
@ -14,6 +16,7 @@ import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
|||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository;
|
import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.BaseActivity;
|
||||||
import it.integry.integrywmsnative.core.expansion.BaseDialog;
|
import it.integry.integrywmsnative.core.expansion.BaseDialog;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||||
@ -23,7 +26,7 @@ import it.integry.integrywmsnative.gest.ordini_acquisto_pv.helper.OrdineAcquisto
|
|||||||
|
|
||||||
public class DialogScanLisA {
|
public class DialogScanLisA {
|
||||||
|
|
||||||
private Context mContext;
|
private Activity mContext;
|
||||||
|
|
||||||
private Dialog mDialog;
|
private Dialog mDialog;
|
||||||
|
|
||||||
@ -32,34 +35,28 @@ public class DialogScanLisA {
|
|||||||
private RunnableArgs<Griglia> mOnDialogDismiss;
|
private RunnableArgs<Griglia> mOnDialogDismiss;
|
||||||
|
|
||||||
private OrdineAcquistoPvHelper mHelper;
|
private OrdineAcquistoPvHelper mHelper;
|
||||||
|
private Griglia mGriglia;
|
||||||
|
|
||||||
private DialogScanLisA(Context context, RunnableArgs<Griglia> onDialogDismiss) {
|
private DialogScanLisA(Activity context, RunnableArgs<Griglia> onDialogDismiss) {
|
||||||
mOnDialogDismiss = null;
|
mOnDialogDismiss = null;
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mHelper = new OrdineAcquistoPvHelper(context);
|
mHelper = new OrdineAcquistoPvHelper(context);
|
||||||
LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
|
LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
|
||||||
|
mGriglia = null;
|
||||||
mBinding = DataBindingUtil.inflate(inflater, R.layout.dialog_scan_codice_griglia, null, false);
|
mBinding = DataBindingUtil.inflate(inflater, R.layout.dialog_scan_codice_griglia, null, false);
|
||||||
|
|
||||||
mDialog = new BaseDialog(context);
|
mDialog = new BaseDialog(context);
|
||||||
mDialog.setContentView(mBinding.getRoot());
|
mDialog.setContentView(mBinding.getRoot());
|
||||||
mDialog.setCanceledOnTouchOutside(false);
|
mDialog.setCanceledOnTouchOutside(false);
|
||||||
// mDialog.setCancelable(false);
|
|
||||||
mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
|
mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
|
||||||
|
mOnDialogDismiss = onDialogDismiss;
|
||||||
init(onDialogDismiss);
|
|
||||||
initBarcode();
|
initBarcode();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Dialog make(Context context, RunnableArgs<Griglia> onDialogDismiss) {
|
public static Dialog make(Activity context, RunnableArgs<Griglia> onDialogDismiss) {
|
||||||
return new DialogScanLisA(context, onDialogDismiss).mDialog;
|
return new DialogScanLisA(context, onDialogDismiss).mDialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void init(RunnableArgs<Griglia> onDialogDismiss) {
|
|
||||||
mOnDialogDismiss = onDialogDismiss;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void initBarcode() {
|
private void initBarcode() {
|
||||||
|
|
||||||
int barcodeIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
int barcodeIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||||
@ -69,34 +66,44 @@ public class DialogScanLisA {
|
|||||||
mDialog.setOnDismissListener(dialog -> {
|
mDialog.setOnDismissListener(dialog -> {
|
||||||
BarcodeManager.removeCallback(barcodeIstanceID);
|
BarcodeManager.removeCallback(barcodeIstanceID);
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
mOnDialogDismiss.run(null);
|
mOnDialogDismiss.run(mGriglia);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private RunnableArgs<BarcodeScanDTO> onScanSuccessfull = data -> {
|
private RunnableArgs<BarcodeScanDTO> onScanSuccessfull = data -> {
|
||||||
BarcodeManager.disable();
|
BarcodeManager.disable();
|
||||||
|
|
||||||
final Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
final Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||||
|
Context context = mContext;
|
||||||
RunnableArgs<Exception> mOnError = exception -> {
|
RunnableArgs<Exception> mOnError = exception -> {
|
||||||
UtilityExceptions.defaultException(mContext,exception,progressDialog);
|
mContext.runOnUiThread(()->{
|
||||||
BarcodeManager.enable();
|
progressDialog.dismiss();
|
||||||
|
UtilityExceptions.defaultException(context,exception);
|
||||||
|
BarcodeManager.enable();
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
RunnableArgs<Griglia> onGrigliaAvaialable = griglia->{
|
||||||
|
mContext.runOnUiThread(()->{
|
||||||
|
progressDialog.dismiss();
|
||||||
|
mGriglia = griglia;
|
||||||
|
mDialog.dismiss();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
GrigliaRepository repository = new GrigliaRepository();
|
GrigliaRepository repository = new GrigliaRepository();
|
||||||
|
|
||||||
repository.findByCodAlis(data.getStringValue(),griglia->{
|
repository.findByCodAlis(data.getStringValue(),griglia->{
|
||||||
if (griglia != null){
|
if (griglia != null){
|
||||||
|
griglia.getGriglia().setCountArticoli(griglia.getCountArticoli());
|
||||||
if (griglia.getCountArticoli() >0){
|
if (griglia.getCountArticoli() >0){
|
||||||
mOnDialogDismiss.run(griglia);
|
onGrigliaAvaialable.run(griglia.getGriglia());
|
||||||
}else{
|
}else{
|
||||||
mHelper.updateGriglia(griglia,(grigliaEntity)->{
|
mHelper.updateGriglia(griglia.getGriglia(), onGrigliaAvaialable,mOnError);
|
||||||
progressDialog.dismiss();
|
|
||||||
mOnDialogDismiss.run(grigliaEntity);
|
|
||||||
},mOnError);
|
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
mHelper.downloadAndSaveLisA(data.getStringValue(),(grigliaEntity)->{
|
mHelper.downloadAndSaveLisA(data.getStringValue(), onGrigliaAvaialable,mOnError);
|
||||||
progressDialog.dismiss();
|
|
||||||
mOnDialogDismiss.run(grigliaEntity);
|
|
||||||
},mOnError);
|
|
||||||
}
|
}
|
||||||
},mOnError);
|
},mOnError);
|
||||||
|
|
||||||
|
|||||||
@ -3,12 +3,15 @@ package it.integry.integrywmsnative.gest.ordini_acquisto_pv.helper;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloGriglia;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliGrigliaRepository;
|
import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliGrigliaRepository;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository;
|
import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.repository.OrdineRepository;
|
||||||
import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloDTO;
|
import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloDTO;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.PVOrdiniAcquistoRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.PVOrdiniAcquistoRESTConsumer;
|
||||||
@ -18,11 +21,13 @@ public class OrdineAcquistoPvHelper {
|
|||||||
private Context mContext;
|
private Context mContext;
|
||||||
private GrigliaRepository mGrigliaRepository;
|
private GrigliaRepository mGrigliaRepository;
|
||||||
private ArticoliGrigliaRepository mArticoliGrigliaRepository;
|
private ArticoliGrigliaRepository mArticoliGrigliaRepository;
|
||||||
|
private OrdineRepository mOrdineRepository;
|
||||||
public OrdineAcquistoPvHelper(Context mContext) {
|
public OrdineAcquistoPvHelper(Context mContext) {
|
||||||
this.mContext = mContext;
|
this.mContext = mContext;
|
||||||
this.mGrigliaRepository = new GrigliaRepository();
|
this.mGrigliaRepository = new GrigliaRepository();
|
||||||
this.mArticoliGrigliaRepository = new ArticoliGrigliaRepository();
|
this.mArticoliGrigliaRepository = new ArticoliGrigliaRepository();
|
||||||
|
this.mOrdineRepository = new OrdineRepository();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void downloadAndSaveLisA(String codAlis, RunnableArgs<Griglia> onSave, RunnableArgs<Exception> onFail) {
|
public void downloadAndSaveLisA(String codAlis, RunnableArgs<Griglia> onSave, RunnableArgs<Exception> onFail) {
|
||||||
@ -40,6 +45,7 @@ public class OrdineAcquistoPvHelper {
|
|||||||
}
|
}
|
||||||
griglia.setDescrLisa(dto.getDescrLisa());
|
griglia.setDescrLisa(dto.getDescrLisa());
|
||||||
griglia.setDescrDepo(dto.getDescrDepo());
|
griglia.setDescrDepo(dto.getDescrDepo());
|
||||||
|
griglia.setCountArticoli(dto.getGrigliaAcquistiChild().size());
|
||||||
mGrigliaRepository.saveGriglia(griglia, id -> {
|
mGrigliaRepository.saveGriglia(griglia, id -> {
|
||||||
saveLisAToGriglia(dto.getGrigliaAcquistiChild(), griglia, onSave, onFail);
|
saveLisAToGriglia(dto.getGrigliaAcquistiChild(), griglia, onSave, onFail);
|
||||||
}, onFail);
|
}, onFail);
|
||||||
@ -47,7 +53,7 @@ public class OrdineAcquistoPvHelper {
|
|||||||
}, onFail);
|
}, onFail);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void saveLisAToGriglia(List<ArticoloDTO> articoli, Griglia griglia, RunnableArgs<Griglia> onSave, RunnableArgs<Exception> onFail) {
|
private void saveLisAToGriglia(List<ArticoloDTO> articoli, Griglia griglia, RunnableArgs<Griglia> onSave, RunnableArgs<Exception> onFail) {
|
||||||
List<ArticoloGriglia> articoliGriglia = new ArrayList<>();
|
List<ArticoloGriglia> articoliGriglia = new ArrayList<>();
|
||||||
for (ArticoloDTO articolo : articoli) {
|
for (ArticoloDTO articolo : articoli) {
|
||||||
ArticoloGriglia toSave = articolo.toArticoloGriglia();
|
ArticoloGriglia toSave = articolo.toArticoloGriglia();
|
||||||
@ -56,4 +62,14 @@ public class OrdineAcquistoPvHelper {
|
|||||||
}
|
}
|
||||||
mArticoliGrigliaRepository.saveArticoliToGriglia(articoliGriglia, () -> onSave.run(griglia), onFail);
|
mArticoliGrigliaRepository.saveArticoliToGriglia(articoliGriglia, () -> onSave.run(griglia), onFail);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void createNewOrder(Griglia griglia, RunnableArgs<Ordine> onSuccess, RunnableArgs<Exception> onError) {
|
||||||
|
Ordine ordine = new Ordine();
|
||||||
|
ordine.setDataOrd(new Date());
|
||||||
|
ordine.setIdGriglia(griglia.getGrigliaId());
|
||||||
|
mOrdineRepository.insert(ordine,id->{
|
||||||
|
ordine.setOrdineId(id);
|
||||||
|
onSuccess.run(ordine);
|
||||||
|
},onError);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,134 @@
|
|||||||
|
package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit;
|
||||||
|
|
||||||
|
import android.app.Dialog;
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||||
|
import it.integry.integrywmsnative.R;
|
||||||
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
||||||
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
|
import it.integry.integrywmsnative.core.data_cache.DataCache;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.BaseActivity;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||||
|
import it.integry.integrywmsnative.databinding.ActivityPvordineAcquistoEditBinding;
|
||||||
|
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.EditArticoloDialog;
|
||||||
|
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.helper.PVEditOrderHelper;
|
||||||
|
|
||||||
|
public class PVOrdineAcquistoEditActivity extends BaseActivity {
|
||||||
|
|
||||||
|
private Ordine mOrdine;
|
||||||
|
private Griglia mGriglia;
|
||||||
|
private List<ArticoloOrdine> mArticoli;
|
||||||
|
private PVEditOrderHelper mhelper;
|
||||||
|
private ActivityPvordineAcquistoEditBinding mBinding;
|
||||||
|
private int mBarcodeScannerIstanceID;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
|
||||||
|
mhelper = new PVEditOrderHelper(this);
|
||||||
|
mBinding = DataBindingUtil.setContentView(this, R.layout.activity_pvordine_acquisto_edit);
|
||||||
|
mBinding.setViewModel(this);
|
||||||
|
mOrdine = DataCache.retrieveItem(getIntent().getStringExtra("keyOrdine"));
|
||||||
|
setTitle("aaaa");
|
||||||
|
fetchDetails();
|
||||||
|
mBarcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||||
|
.setOnScanSuccessfull(this::onScanSuccessful)
|
||||||
|
.setOnScanFailed(this::handleException));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void handleException(Exception ex) {
|
||||||
|
runOnUiThread(()->{
|
||||||
|
BarcodeManager.enable();
|
||||||
|
UtilityExceptions.defaultException(this, ex, false);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void onScanSuccessful(BarcodeScanDTO dto) {
|
||||||
|
BarcodeManager.disable();
|
||||||
|
final Dialog progress = UtilityProgress.createDefaultProgressDialog(this);
|
||||||
|
mhelper.checkArticolo(
|
||||||
|
mOrdine,
|
||||||
|
dto.getStringValue(),
|
||||||
|
articoloOrdine -> {
|
||||||
|
progress.dismiss();
|
||||||
|
addArticolo(articoloOrdine);
|
||||||
|
},
|
||||||
|
e -> {
|
||||||
|
progress.dismiss();
|
||||||
|
handleException(e);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addArticolo(ArticoloOrdine articoloOrdine) {
|
||||||
|
runOnUiThread(()->{
|
||||||
|
EditArticoloDialog.make(this, articoloOrdine, articolo -> {
|
||||||
|
BarcodeManager.enable();
|
||||||
|
if (articolo == null) {
|
||||||
|
Toast.makeText(this, "Inserimento articolo annullato", Toast.LENGTH_SHORT).show();
|
||||||
|
} else {
|
||||||
|
Toast.makeText(this, "Articolo inserito", Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
}).show();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void fetchDetails() {
|
||||||
|
fetchGriglia();
|
||||||
|
fetchArticoli();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void fetchGriglia() {
|
||||||
|
mhelper.loadGriglia(mOrdine.getIdGriglia(), griglia -> {
|
||||||
|
runOnUiThread(()->{
|
||||||
|
mGriglia = griglia;
|
||||||
|
mBinding.codAlis.setText(mGriglia.getCodAlis());
|
||||||
|
});
|
||||||
|
}, this::handleException);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void fetchArticoli() {
|
||||||
|
final Dialog progress = UtilityProgress.createDefaultProgressDialog(this);
|
||||||
|
mhelper.loadArticoli(mOrdine, articoli -> {
|
||||||
|
progress.dismiss();
|
||||||
|
mArticoli = articoli;
|
||||||
|
runOnUiThread(()->{
|
||||||
|
mBinding.countArtOrd.setText(String.valueOf(mArticoli.size()));
|
||||||
|
mBinding.pvOrdineExport.setVisibility(mArticoli.size() > 0 ? View.VISIBLE : View.GONE);
|
||||||
|
});
|
||||||
|
}, this::handleException);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void addArticoloToOrdine(ArticoloOrdine articolo) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void closeEdit() {
|
||||||
|
onBackPressed();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void exportOrdine() {
|
||||||
|
onBackPressed();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBackPressed() {
|
||||||
|
BarcodeManager.removeCallback(mBarcodeScannerIstanceID);
|
||||||
|
super.onBackPressed();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,127 @@
|
|||||||
|
package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.app.Dialog;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.graphics.Color;
|
||||||
|
import android.graphics.drawable.ColorDrawable;
|
||||||
|
import android.text.Editable;
|
||||||
|
import android.text.TextWatcher;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
|
||||||
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.R;
|
||||||
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.BaseDialog;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||||
|
import it.integry.integrywmsnative.databinding.DialogPvEditArticoloBinding;
|
||||||
|
import it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.helper.PVEditOrderHelper;
|
||||||
|
|
||||||
|
public class EditArticoloDialog {
|
||||||
|
|
||||||
|
private Activity mContext;
|
||||||
|
|
||||||
|
private Dialog mDialog;
|
||||||
|
|
||||||
|
private DialogPvEditArticoloBinding mBinding;
|
||||||
|
|
||||||
|
private PVEditOrderHelper mHelper;
|
||||||
|
|
||||||
|
private ArticoloOrdine mArticolo;
|
||||||
|
|
||||||
|
private ArticoloOrdine mSavedArt;
|
||||||
|
|
||||||
|
private boolean mLockedInput = false;
|
||||||
|
|
||||||
|
private EditArticoloDialog(Activity context, ArticoloOrdine articolo, RunnableArgs<ArticoloOrdine> onDialogDismiss) {
|
||||||
|
mContext = context;
|
||||||
|
mArticolo = articolo;
|
||||||
|
mHelper = new PVEditOrderHelper(context);
|
||||||
|
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
||||||
|
mBinding = DataBindingUtil.inflate(inflater, R.layout.dialog_pv_edit_articolo, null, false);
|
||||||
|
mBinding.setViewmodel(this);
|
||||||
|
mDialog = new BaseDialog(context);
|
||||||
|
mDialog.setContentView(mBinding.getRoot());
|
||||||
|
mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
|
||||||
|
mSavedArt = null;
|
||||||
|
mDialog.setOnDismissListener(dialog -> {
|
||||||
|
onDialogDismiss.run(mSavedArt);
|
||||||
|
});
|
||||||
|
setListeners();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setListeners() {
|
||||||
|
mBinding.qtaTot.addTextChangedListener(new TextWatcher() {
|
||||||
|
@Override
|
||||||
|
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
||||||
|
if (mLockedInput){
|
||||||
|
mLockedInput = false;
|
||||||
|
}else{
|
||||||
|
mLockedInput = true;
|
||||||
|
float qtaTot = Float.parseFloat(s.toString());
|
||||||
|
float qtaCnf = qtaTot * mArticolo.getQtaCnf();
|
||||||
|
mBinding.qtaCnf.setText(String.valueOf(qtaCnf));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void afterTextChanged(Editable s) {
|
||||||
|
}
|
||||||
|
});
|
||||||
|
mBinding.qtaCnf.addTextChangedListener(new TextWatcher() {
|
||||||
|
@Override
|
||||||
|
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
||||||
|
if (mLockedInput){
|
||||||
|
mLockedInput = false;
|
||||||
|
}else{
|
||||||
|
mLockedInput = true;
|
||||||
|
float qtaCnf = Float.parseFloat(s.toString());
|
||||||
|
float qtaTot = qtaCnf / mArticolo.getQtaCnf();
|
||||||
|
mBinding.qtaTot.setText(String.valueOf(qtaTot));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void afterTextChanged(Editable s) {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Dialog make(Activity context, ArticoloOrdine articolo, RunnableArgs<ArticoloOrdine> onDialogDismiss) {
|
||||||
|
return new EditArticoloDialog(context, articolo, onDialogDismiss).mDialog;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void saveAndExit(){
|
||||||
|
final Dialog progress = UtilityProgress.createDefaultProgressDialog(mContext);
|
||||||
|
mHelper.saveArticoloToOrdine(mArticolo, ()->{
|
||||||
|
mSavedArt = mArticolo;
|
||||||
|
progress.dismiss();
|
||||||
|
mDialog.dismiss();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArticoloOrdine getArticolo() {
|
||||||
|
return mArticolo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void cancel() {
|
||||||
|
mArticolo = null;
|
||||||
|
mDialog.dismiss();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,82 @@
|
|||||||
|
package it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.helper;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.text.TextUtils;
|
||||||
|
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.ArticoloOrdine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Griglia;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.entity.Ordine;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliGrigliaRepository;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.repository.ArticoliOrdineRepository;
|
||||||
|
import it.integry.integrywmsnative.core.data_store.db.repository.GrigliaRepository;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
|
||||||
|
public class PVEditOrderHelper {
|
||||||
|
private Context mContext;
|
||||||
|
private GrigliaRepository mGrigliaRepository;
|
||||||
|
private ArticoliOrdineRepository mArticoliOrdineRepository;
|
||||||
|
private ArticoliGrigliaRepository mArticoliGrigliaRepository ;
|
||||||
|
|
||||||
|
public PVEditOrderHelper(Context mContext) {
|
||||||
|
this.mContext = mContext;
|
||||||
|
mGrigliaRepository = new GrigliaRepository();
|
||||||
|
mArticoliOrdineRepository = new ArticoliOrdineRepository();
|
||||||
|
mArticoliGrigliaRepository = new ArticoliGrigliaRepository();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void checkArticolo(Ordine ordine, String barcode, RunnableArgs<ArticoloOrdine> onSuccess, RunnableArgs<Exception> onFail){
|
||||||
|
try{
|
||||||
|
mArticoliOrdineRepository.findArticoloByScanAndGriglia(ordine,barcode,(articolo)->{
|
||||||
|
if (articolo != null) {
|
||||||
|
onSuccess.run(articolo);
|
||||||
|
}else{
|
||||||
|
mArticoliGrigliaRepository.findArticoloByScanAndGriglia(barcode, ordine.getIdGriglia(),artGrid->{
|
||||||
|
if (artGrid != null){
|
||||||
|
onSuccess.run(artGrid.convertToArticoloOrdine(ordine));
|
||||||
|
}else{
|
||||||
|
if (barcode.length() < 13){
|
||||||
|
String newbarcode = StringUtils.leftPad(barcode,13,'0');
|
||||||
|
mArticoliGrigliaRepository.findArticoloByScanAndGriglia(newbarcode, ordine.getIdGriglia(),aartGrid->{
|
||||||
|
if (aartGrid != null){
|
||||||
|
onSuccess.run(aartGrid.convertToArticoloOrdine(ordine));
|
||||||
|
}else{
|
||||||
|
onFail.run(new Exception("L' articolo ( "+barcode+" ) non è presente nella griglia"));
|
||||||
|
}
|
||||||
|
},onFail);
|
||||||
|
}else{
|
||||||
|
onFail.run(new Exception("L' articolo ( "+barcode+" ) non è presente nella griglia"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},onFail);
|
||||||
|
}
|
||||||
|
},onFail);
|
||||||
|
|
||||||
|
}catch (Exception e){
|
||||||
|
onFail.run(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void loadGriglia(int idGriglia, RunnableArgs<Griglia> onLoad, RunnableArgs<Exception> onError) {
|
||||||
|
try{
|
||||||
|
mGrigliaRepository.findGrigliaById(idGriglia,onLoad,onError);
|
||||||
|
}catch (Exception e){
|
||||||
|
onError.run(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public void loadArticoli(Ordine ordine, RunnableArgs<List<ArticoloOrdine>> onLoad, RunnableArgs<Exception> onError){
|
||||||
|
try{
|
||||||
|
mArticoliOrdineRepository.findArticoliByOrdine(ordine,onLoad,onError);
|
||||||
|
}catch (Exception e){
|
||||||
|
onError.run(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void saveArticoloToOrdine(ArticoloOrdine articolo, Runnable onSsve) {
|
||||||
|
onSsve.run();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -22,13 +22,19 @@ public class DialogProgress {
|
|||||||
|
|
||||||
private Dialog mDialog;
|
private Dialog mDialog;
|
||||||
|
|
||||||
|
public static Dialog make(Context context,String subtitle) {
|
||||||
|
DialogProgress progress = new DialogProgress(context);
|
||||||
|
progress.setSubtitle(subtitle);
|
||||||
|
return progress.mDialog;
|
||||||
|
}
|
||||||
|
|
||||||
public static Dialog make(Context context) {
|
public static Dialog make(Context context) {
|
||||||
return new DialogProgress(context).mDialog;
|
return new DialogProgress(context).mDialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public DialogProgress(Context context) {
|
private DialogProgress(Context context) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
|
|
||||||
LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
|
LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
|
||||||
@ -52,8 +58,8 @@ public class DialogProgress {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSubtitle(String subtitle){
|
private void setSubtitle(String subtitle){
|
||||||
mBinding.setSubtitle(subtitle);
|
mBinding.subtitleText.setText(subtitle);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
9
app/src/main/res/drawable/ic_save_24.xml
Normal file
9
app/src/main/res/drawable/ic_save_24.xml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="24.0"
|
||||||
|
android:viewportHeight="24.0">
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M17,3L5,3c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,7l-4,-4zM12,19c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3 3,1.34 3,3 -1.34,3 -3,3zM15,9L5,9L5,5h10v4z"/>
|
||||||
|
</vector>
|
||||||
202
app/src/main/res/layout/activity_pvordine_acquisto_edit.xml
Normal file
202
app/src/main/res/layout/activity_pvordine_acquisto_edit.xml
Normal file
@ -0,0 +1,202 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
|
<layout xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:fab="http://schemas.android.com/apk/res-auto">
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<import type="android.view.View" />
|
||||||
|
<variable
|
||||||
|
name="viewModel"
|
||||||
|
type="it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.PVOrdineAcquistoEditActivity" />
|
||||||
|
|
||||||
|
</data>
|
||||||
|
|
||||||
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:background="@color/full_white">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:focusableInTouchMode="true"
|
||||||
|
tools:context=".gest.contenuto_bancale.ContenutoBancaleActivity">
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@drawable/gray_detail_background_round8"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_marginLeft="8dp"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:padding="16dp">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="ordine: "
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
android:textSize="16sp"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/order_identifier"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
tools:text="22 ottobre 2018"
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Griglia "
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/cod_alis"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
tools:text="4SECCO"
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
android:textStyle="italic"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:layout_marginTop="12dp">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="N. articoli "
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/count_art_ord"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
tools:text="10"
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
android:textStyle="bold"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Small" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
|
android:id="@+id/articoli_ordine_list"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="16dp"
|
||||||
|
android:layout_marginBottom="92dp"
|
||||||
|
android:paddingStart="2dp"
|
||||||
|
android:paddingEnd="2dp"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<com.github.clans.fab.FloatingActionMenu
|
||||||
|
android:id="@+id/close_activity_fab"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
fab:menu_animationDelayPerItem="50"
|
||||||
|
fab:menu_backgroundColor="@color/white_bg_alpha"
|
||||||
|
fab:menu_buttonSpacing="0dp"
|
||||||
|
fab:menu_colorNormal="@color/success_color"
|
||||||
|
fab:menu_colorPressed="@color/green_400"
|
||||||
|
fab:menu_fab_size="normal"
|
||||||
|
fab:menu_labels_colorNormal="@color/white"
|
||||||
|
fab:menu_labels_colorPressed="@color/white_pressed"
|
||||||
|
fab:menu_labels_colorRipple="#66FFFFFF"
|
||||||
|
fab:menu_labels_cornerRadius="3dp"
|
||||||
|
fab:menu_labels_hideAnimation="@anim/fab_slide_out_to_right"
|
||||||
|
fab:menu_labels_margin="0dp"
|
||||||
|
fab:menu_labels_padding="8dp"
|
||||||
|
fab:menu_labels_paddingBottom="4dp"
|
||||||
|
fab:menu_labels_paddingLeft="8dp"
|
||||||
|
fab:menu_labels_paddingRight="8dp"
|
||||||
|
fab:menu_labels_paddingTop="4dp"
|
||||||
|
fab:menu_labels_position="left"
|
||||||
|
fab:menu_labels_showAnimation="@anim/fab_slide_in_from_right"
|
||||||
|
fab:menu_labels_showShadow="true"
|
||||||
|
fab:menu_labels_textColor="@color/black_semi_transparent"
|
||||||
|
fab:menu_labels_textSize="18sp"
|
||||||
|
app:fab_showAnimation="@anim/fab_scale_up"
|
||||||
|
app:fab_hideAnimation="@anim/fab_scale_down"
|
||||||
|
fab:menu_openDirection="up"
|
||||||
|
fab:menu_shadowColor="#66000000"
|
||||||
|
fab:menu_shadowRadius="4dp"
|
||||||
|
fab:menu_shadowXOffset="1dp"
|
||||||
|
fab:menu_shadowYOffset="3dp"
|
||||||
|
fab:menu_showShadow="true"
|
||||||
|
app:menu_icon="@drawable/ic_check_white_24dp"
|
||||||
|
>
|
||||||
|
|
||||||
|
|
||||||
|
<com.github.clans.fab.FloatingActionButton
|
||||||
|
android:id="@+id/pv_ordine_export"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:src="@drawable/ic_black_upload"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:fab_colorNormal="@color/white"
|
||||||
|
app:fab_colorPressed="@color/white_pressed"
|
||||||
|
app:fab_colorRipple="#66FFFFFF"
|
||||||
|
app:onClick="@{() -> viewModel.exportOrdine()}"
|
||||||
|
fab:fab_label="@string/action_recover_ul"
|
||||||
|
/>
|
||||||
|
<com.github.clans.fab.FloatingActionButton
|
||||||
|
android:id="@+id/pv_ordine_close"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:src="@drawable/ic_check_black_24dp"
|
||||||
|
android:visibility="visible"
|
||||||
|
app:fab_colorNormal="@color/white"
|
||||||
|
app:fab_colorPressed="@color/white_pressed"
|
||||||
|
app:fab_colorRipple="#66FFFFFF"
|
||||||
|
app:onClick="@{() -> viewModel.exportOrdine()}"
|
||||||
|
fab:fab_label="@string/action_recover_ul"
|
||||||
|
android:scaleX="-1" />
|
||||||
|
|
||||||
|
|
||||||
|
</com.github.clans.fab.FloatingActionMenu>
|
||||||
|
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||||
|
</layout>
|
||||||
237
app/src/main/res/layout/dialog_pv_edit_articolo.xml
Normal file
237
app/src/main/res/layout/dialog_pv_edit_articolo.xml
Normal file
@ -0,0 +1,237 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
|
<layout xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools">
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<import type="it.integry.integrywmsnative.core.utility.UtilityNumber" />
|
||||||
|
<variable
|
||||||
|
name="viewmodel"
|
||||||
|
type="it.integry.integrywmsnative.gest.pv_ordine_acquisto_edit.dialog.EditArticoloDialog" />
|
||||||
|
</data>
|
||||||
|
|
||||||
|
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:id="@+id/base_root"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_horizontal"
|
||||||
|
app:cardCornerRadius="12dp"
|
||||||
|
app:cardElevation="0dp">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@color/light_blue_300"
|
||||||
|
android:gravity="center_horizontal">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:src="@drawable/ic_error_white_24dp"
|
||||||
|
android:layout_margin="24dp"/>
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingTop="24dp"
|
||||||
|
android:paddingLeft="24dp"
|
||||||
|
android:paddingRight="24dp">
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/dialog_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/cod_mart"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
android:textSize="18sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="@{viewmodel.articolo.codMart}"
|
||||||
|
tools:text="codMart"/>
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_below="@id/cod_mart"
|
||||||
|
android:id="@+id/descr_art"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textColor="@color/red_600"
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:text="@{viewmodel.articolo.descrizione}"
|
||||||
|
android:textStyle="bold"
|
||||||
|
tools:text="DESCR ART"/>
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentEnd="true"
|
||||||
|
android:paddingLeft="8dp"
|
||||||
|
android:text="@{viewmodel.articolo.untMis}"
|
||||||
|
android:textColor="#000"
|
||||||
|
android:textSize="18sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
tools:text="(UM)"
|
||||||
|
app:layout_constraintRight_toRightOf="parent" />
|
||||||
|
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Qta media settimanale: "
|
||||||
|
android:textSize="16sp" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text='@{UtilityNumber.decimalToString(viewmodel.articolo.mediaSett)}'
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:paddingStart="4dp"
|
||||||
|
tools:text="1150" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Qta per confezione: "
|
||||||
|
android:textSize="16sp" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text='@{UtilityNumber.decimalToString(viewmodel.articolo.qtaCnf)}'
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:paddingStart="4dp"
|
||||||
|
tools:text="5" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="16dp">
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:weightSum="2">
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputLayout
|
||||||
|
android:id="@+id/qta_cnf_label"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="@id/guide_left"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/guide_right"
|
||||||
|
android:layout_marginBottom="16dp"
|
||||||
|
style="@style/TextInputLayout.OutlinePrimary">
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
|
android:id="@+id/qta_cnf"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:hint="@string/packages"
|
||||||
|
android:inputType="numberDecimal"
|
||||||
|
style="@style/TextInputEditText.OutlinePrimary"/>
|
||||||
|
|
||||||
|
</com.google.android.material.textfield.TextInputLayout>
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputLayout
|
||||||
|
android:id="@+id/qta_tot_label"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="@id/guide_left"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/guide_right"
|
||||||
|
android:layout_marginBottom="16dp"
|
||||||
|
style="@style/TextInputLayout.OutlinePrimary">
|
||||||
|
|
||||||
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
|
android:id="@+id/qta_tot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:hint="@string/quantity"
|
||||||
|
android:inputType="numberDecimal"
|
||||||
|
style="@style/TextInputEditText.OutlinePrimary"/>
|
||||||
|
|
||||||
|
</com.google.android.material.textfield.TextInputLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingTop="12dp"
|
||||||
|
android:paddingBottom="8dp"
|
||||||
|
android:gravity="bottom|center_horizontal">
|
||||||
|
|
||||||
|
|
||||||
|
<com.google.android.material.button.MaterialButton
|
||||||
|
android:id="@+id/button_abort"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
style="@style/Button.PrimaryOutline"
|
||||||
|
app:icon="@drawable/ic_clear_24dp"
|
||||||
|
app:strokeColor="@color/colorPrimary"
|
||||||
|
android:onClick="@{()->viewmodel.cancel()}"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
|
android:text="@string/abort"
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
|
<com.google.android.material.button.MaterialButton
|
||||||
|
android:id="@+id/button_confirm"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
style="@style/Button.PrimaryFull"
|
||||||
|
app:icon="@drawable/ic_add_24dp"
|
||||||
|
android:onClick="@{()->viewmodel.saveAndExit()}"
|
||||||
|
android:text="@string/add"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</androidx.cardview.widget.CardView>
|
||||||
|
|
||||||
|
</layout>
|
||||||
@ -21,8 +21,7 @@
|
|||||||
android:paddingTop="8dp"
|
android:paddingTop="8dp"
|
||||||
android:paddingBottom="8dp"
|
android:paddingBottom="8dp"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:background="@drawable/bg_checked_layout"
|
android:background="@drawable/bg_checked_layout">
|
||||||
app:backgroundTintResID="@{ordine.isSelected() ? R.color.bg_checked_layout : android.R.color.transparent}" >
|
|
||||||
|
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
<variable
|
<variable
|
||||||
name="viewmodel"
|
name="viewmodel"
|
||||||
type="it.integry.integrywmsnative.gest.picking_libero.viewmodel.PickingLiberoViewModel" />
|
type="it.integry.integrywmsnative.gest.ordini_acquisto_pv.PVOrdiniAcquistoGrigliaFragment" />
|
||||||
|
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
@ -26,46 +26,11 @@
|
|||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:background="@color/full_white">
|
android:background="@color/full_white">
|
||||||
|
|
||||||
<it.integry.integrywmsnative.ui.ElevatedToolbar
|
|
||||||
android:id="@+id/elevated_toolbar"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.Toolbar
|
|
||||||
android:id="@+id/toolbar"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="?actionBarSize"
|
|
||||||
android:gravity="center_horizontal"
|
|
||||||
app:popupTheme="@style/AppTheme.PopupOverlay">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
|
||||||
android:id="@+id/toolbar_title"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
tools:text="Ordini di acquisto"
|
|
||||||
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
|
|
||||||
android:layout_gravity="center" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.Toolbar>
|
|
||||||
|
|
||||||
</it.integry.integrywmsnative.ui.ElevatedToolbar>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<androidx.core.widget.NestedScrollView
|
|
||||||
android:id="@+id/scroll_view"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
app:layout_behavior="@string/appbar_scrolling_view_behavior">
|
|
||||||
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:paddingTop="8dp"
|
android:paddingTop="8dp">
|
||||||
android:focusableInTouchMode="true"
|
|
||||||
tools:context=".gest.contenuto_bancale.ContenutoBancaleActivity">
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@ -84,14 +49,15 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Griglia: "
|
android:text="@string/cod_alis_name"
|
||||||
android:textColor="@android:color/black"
|
android:textColor="@android:color/black"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
android:textSize="16sp" />
|
android:textSize="16sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/cod_alis"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@{viewmodel.griglia.getCodAlis()}"
|
|
||||||
tools:text="4SECCO"
|
tools:text="4SECCO"
|
||||||
android:textColor="@android:color/black"
|
android:textColor="@android:color/black"
|
||||||
android:textSize="16sp"
|
android:textSize="16sp"
|
||||||
@ -106,14 +72,15 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Descrizione griglia: "
|
android:text="@string/descrizione_griglia"
|
||||||
android:textColor="@android:color/black"
|
android:textColor="@android:color/black"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/descr_lis"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@{viewmodel.griglia.getDescrLisa() != null ? viewmodel.griglia.getDescrLisa() : `N/D`}"
|
|
||||||
tools:text="LISTINO FORMAT CEDI SECCO"
|
tools:text="LISTINO FORMAT CEDI SECCO"
|
||||||
android:textColor="@android:color/black"
|
android:textColor="@android:color/black"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
@ -128,14 +95,15 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Articoli in griglia: "
|
android:text="@string/articoli_in_griglia"
|
||||||
android:textColor="@android:color/black"
|
android:textColor="@android:color/black"
|
||||||
|
android:layout_marginEnd="8dp"
|
||||||
android:textSize="14sp" />
|
android:textSize="14sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/count_art_lis"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@{viewmodel.griglia.getCountArticoli()}"
|
|
||||||
tools:text="10"
|
tools:text="10"
|
||||||
android:textColor="@android:color/black"
|
android:textColor="@android:color/black"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
@ -145,21 +113,77 @@
|
|||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
>
|
||||||
<androidx.recyclerview.widget.RecyclerView
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
android:id="@+id/ordini_a_aperti_main_list"
|
android:id="@+id/ordini_a_aperti_main_list"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginTop="16dp"
|
android:layout_marginTop="16dp"
|
||||||
android:layout_marginBottom="92dp"
|
android:layout_marginBottom="92dp"
|
||||||
|
android:background="@color/full_white"
|
||||||
android:paddingStart="2dp"
|
android:paddingStart="2dp"
|
||||||
android:paddingEnd="2dp">
|
android:paddingEnd="2dp"/>
|
||||||
|
|
||||||
</androidx.recyclerview.widget.RecyclerView>
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:id="@+id/ordini_a_empty_view"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:alpha="0.3">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.Guideline
|
||||||
|
android:id="@+id/guideline_empty_top"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
app:layout_constraintGuide_percent="0.2" />
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.Guideline
|
||||||
|
android:id="@+id/guideline_empty_left"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintGuide_percent="0.15" />
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.Guideline
|
||||||
|
android:id="@+id/guideline_empty_right"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintGuide_percent="0.85" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:gravity="center_horizontal"
|
||||||
|
|
||||||
|
app:layout_constraintStart_toEndOf="@id/guideline_empty_left"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/guideline_empty_right"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/guideline_empty_top">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:layout_width="72dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:src="@drawable/ic_playlist_add_check_24dp"
|
||||||
|
android:adjustViewBounds="true"/>
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="center_horizontal"
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
android:textSize="18sp"
|
||||||
|
android:text="@string/no_orders_found_message"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.core.widget.NestedScrollView>
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
@ -175,7 +199,7 @@
|
|||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
app:layout_constraintGuide_percent="0.35"/>
|
app:layout_constraintGuide_percent="0.3"/>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.Guideline
|
<androidx.constraintlayout.widget.Guideline
|
||||||
android:id="@+id/free_picking__suggestion_1__guideline_left"
|
android:id="@+id/free_picking__suggestion_1__guideline_left"
|
||||||
@ -197,14 +221,15 @@
|
|||||||
|
|
||||||
|
|
||||||
<com.github.clans.fab.FloatingActionButton
|
<com.github.clans.fab.FloatingActionButton
|
||||||
|
android:id="@+id/fab_newOrder"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="bottom|right"
|
android:layout_gravity="bottom|end"
|
||||||
android:layout_marginBottom="8dp"
|
android:layout_marginBottom="8dp"
|
||||||
android:layout_marginRight="8dp"
|
android:layout_marginEnd="8dp"
|
||||||
android:src="@drawable/fab_add"
|
android:src="@drawable/fab_add"
|
||||||
android:onClick="@{() -> viewmodel.createNewOrder()}"
|
android:onClick="@{() -> viewmodel.createNewOrder()}"
|
||||||
android:visibility="@{viewmodel.griglia != null ? View.VISIBLE : View.GONE}"
|
android:visibility="gone"
|
||||||
fab:fab_colorNormal="@color/success_color"
|
fab:fab_colorNormal="@color/success_color"
|
||||||
fab:fab_colorPressed="@color/green_500"
|
fab:fab_colorPressed="@color/green_500"
|
||||||
fab:fab_colorRipple="#66FFFFFF"/>
|
fab:fab_colorRipple="#66FFFFFF"/>
|
||||||
|
|||||||
@ -0,0 +1,37 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:orientation="vertical" android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingStart="8dp"
|
||||||
|
android:paddingEnd="8dp"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:paddingBottom="8dp">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text.Medium"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:layout_alignParentStart="true"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="@string/ordini_a_aperti"
|
||||||
|
tools:text="Title here"/>
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</layout>
|
||||||
@ -0,0 +1,70 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
|
||||||
|
<data>
|
||||||
|
<import type="it.integry.integrywmsnative.R" />
|
||||||
|
<variable
|
||||||
|
name="ordine"
|
||||||
|
type="it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO" />
|
||||||
|
</data>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="4dp"
|
||||||
|
android:layout_marginStart="4dp"
|
||||||
|
android:layout_marginBottom="4dp"
|
||||||
|
android:paddingStart="8dp"
|
||||||
|
android:paddingEnd="8dp"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:paddingBottom="8dp"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="8dp">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/order_identifier"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="@android:color/black"
|
||||||
|
style="@android:style/TextAppearance.Small"
|
||||||
|
android:layout_marginEnd="4dp"
|
||||||
|
android:layout_toStartOf="@id/data_ord"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:text="aaaaaa"
|
||||||
|
tools:text="IDENTIFIER"/>
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/data_ord"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
style="@style/AppTheme.NewMaterial.Text"
|
||||||
|
android:textColor="@color/colorPrimaryGray"
|
||||||
|
android:layout_alignParentEnd="true"
|
||||||
|
android:textSize="14sp"
|
||||||
|
tools:text="13 Apr"/>
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/num_arts"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
style="@android:style/TextAppearance.Small"
|
||||||
|
android:layout_marginTop="4dp"
|
||||||
|
android:layout_marginEnd="4dp"
|
||||||
|
android:layout_below="@id/order_identifier"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:ellipsize="end"
|
||||||
|
tools:text="0 Articoli"/>
|
||||||
|
</RelativeLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</layout>
|
||||||
@ -116,6 +116,7 @@
|
|||||||
<string name="lu_creation">Creazione UL</string>
|
<string name="lu_creation">Creazione UL</string>
|
||||||
|
|
||||||
<string name="quantity">Quantità</string>
|
<string name="quantity">Quantità</string>
|
||||||
|
<string name="packages">Confezioni</string>
|
||||||
<string name="quantity_short">Qtà</string>
|
<string name="quantity_short">Qtà</string>
|
||||||
|
|
||||||
<string name="ordered_abbr">Ord</string>
|
<string name="ordered_abbr">Ord</string>
|
||||||
@ -268,4 +269,12 @@
|
|||||||
<string name="other">Altro</string>
|
<string name="other">Altro</string>
|
||||||
<string name="home">Home</string>
|
<string name="home">Home</string>
|
||||||
<string name="logout">Logout</string>
|
<string name="logout">Logout</string>
|
||||||
|
<string name="ordini_a_aperti">Ordini aperti</string>
|
||||||
|
<string name="ordini_a_aperti_progress">Controllo ordini aperti</string>
|
||||||
|
<string name="ord_acq_num_articoli"><![CDATA[#<b>%s</b> articoli]]></string>
|
||||||
|
<string name="descrizione_griglia">Descrizione griglia: </string>
|
||||||
|
<string name="articoli_in_griglia">Articoli in griglia: </string>
|
||||||
|
<string name="cod_alis_name">Griglia: </string>
|
||||||
|
<string name="seleziona_crea_ordine_a_pv">Seleziona / Crea ordine</string>
|
||||||
|
<string name="add">Agigungi</string>
|
||||||
</resources>
|
</resources>
|
||||||
@ -113,6 +113,7 @@
|
|||||||
<string name="lu_creation">LU Creation</string>
|
<string name="lu_creation">LU Creation</string>
|
||||||
|
|
||||||
<string name="quantity">Quantity</string>
|
<string name="quantity">Quantity</string>
|
||||||
|
<string name="packages">Packages</string>
|
||||||
<string name="quantity_short">Qty</string>
|
<string name="quantity_short">Qty</string>
|
||||||
|
|
||||||
<string name="ordered_abbr">Ord</string>
|
<string name="ordered_abbr">Ord</string>
|
||||||
@ -273,4 +274,12 @@
|
|||||||
<string name="pv_elenco_ordiniA_transmitted_title_fragment">Transmitted Orders</string>
|
<string name="pv_elenco_ordiniA_transmitted_title_fragment">Transmitted Orders</string>
|
||||||
<string name="title_open_grid_pv">Select grid</string>
|
<string name="title_open_grid_pv">Select grid</string>
|
||||||
<string name="scan_grid">scan the barcode for the wanted <b>grid</b></string>
|
<string name="scan_grid">scan the barcode for the wanted <b>grid</b></string>
|
||||||
|
<string name="ordini_a_aperti">Open orders</string>
|
||||||
|
<string name="ordini_a_aperti_progress">Checking for open orders</string>
|
||||||
|
<string name="ord_acq_num_articoli"><![CDATA[#<b>%s</b> items]]></string>
|
||||||
|
<string name="descrizione_griglia">Grid description:</string>
|
||||||
|
<string name="articoli_in_griglia">Items in grid:</string>
|
||||||
|
<string name="cod_alis_name">Grid: </string>
|
||||||
|
<string name="seleziona_crea_ordine_a_pv">Select/Create order</string>
|
||||||
|
<string name="add">Add</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@ -16,8 +16,8 @@ buildscript {
|
|||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:3.5.1'
|
classpath 'com.android.tools.build:gradle:3.5.1'
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
classpath 'com.google.gms:google-services:4.2.0'
|
classpath 'com.google.gms:google-services:4.3.2'
|
||||||
classpath 'com.google.firebase:perf-plugin:1.2.1'
|
classpath 'com.google.firebase:perf-plugin:1.3.1'
|
||||||
|
|
||||||
// NOTE: Do not place your application dependencies here; they belong
|
// NOTE: Do not place your application dependencies here; they belong
|
||||||
// in the individual module build.gradle files
|
// in the individual module build.gradle files
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user