diff --git a/.idea/modules.xml b/.idea/modules.xml index ad566b9..a329b11 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -3,6 +3,8 @@ + + diff --git a/GSKMTOrange/src/main/AndroidManifest.xml b/GSKMTOrange/src/main/AndroidManifest.xml index 78966ce..bcb6ebb 100644 --- a/GSKMTOrange/src/main/AndroidManifest.xml +++ b/GSKMTOrange/src/main/AndroidManifest.xml @@ -68,7 +68,6 @@ android:label="@string/title_activity_store_geotag" android:screenOrientation="portrait" android:theme="@style/AppTheme.NoActionBar" /> - @@ -80,6 +79,7 @@ android:name=".dailyentry.T2PComplianceActivity" android:label="@string/title_activity_t2_pcompliance" android:screenOrientation="portrait" + android:configChanges="screenSize|orientation|keyboardHidden" android:theme="@style/AppTheme.NoActionBar" /> @@ -130,12 +130,20 @@ + android:theme="@style/AppTheme.NoActionBar"/> + + + + \ No newline at end of file diff --git a/GSKMTOrange/src/main/assets/fonts/fontawesome-webfont.ttf b/GSKMTOrange/src/main/assets/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000..35acda2 Binary files /dev/null and b/GSKMTOrange/src/main/assets/fonts/fontawesome-webfont.ttf differ diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java index ba4bf3a..aaca1e8 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -11,11 +11,13 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import cpm.com.gskmtorange.GetterSetter.AddittionalGetterSetter; import cpm.com.gskmtorange.GetterSetter.CoverageBean; import cpm.com.gskmtorange.GetterSetter.GeotaggingBeans; import cpm.com.gskmtorange.GetterSetter.StoreBean; - import cpm.com.gskmtorange.xmlGetterSetter.CategoryWisePerformaceGetterSetter; +import cpm.com.gskmtorange.GetterSetter.AdditionalDialogGetterSetter; + import cpm.com.gskmtorange.xmlGetterSetter.NonWorkingReasonGetterSetter; import cpm.com.gskmtorange.constant.CommonString; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; @@ -76,13 +78,20 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.execSQL(TableBean.getDisplayMaster()); db.execSQL(TableBean.getMappingStock()); db.execSQL(TableBean.getMappingT2p()); + db.execSQL(TableBean.getNonWorkingReason()); + db.execSQL(CommonString.CREATE_TABLE_STORE_GEOTAGGING); + db.execSQL(CommonString.CREATE_TABLE_COVERAGE_DATA); + db.execSQL(TableBean.getDisplayChecklistMaster()); + db.execSQL(TableBean.getMappingDisplayChecklist()); db.execSQL(TableBean.getMappingAdditionalPromotion()); db.execSQL(TableBean.getMappingPromotion()); db.execSQL(CommonString.CREATE_TABLE_INSERT_MSL_AVAILABILITY); - + db.execSQL(CommonString.CREATE_TABLE_INSERT_STOCK_ADDITIONAL_VISIBILITY); db.execSQL(CommonString.CREATE_TABLE_INSERT_STOCK_FACING_HEADER); db.execSQL(CommonString.CREATE_TABLE_INSERT_STOCK_FACING_CHILD); + db.execSQL(CommonString.CREATE_TABLE_STOCK_DIALOG); + db.execSQL(CommonString.CREATE_TABLE_STOCK_ADDITIONAL_STOCK_DATA); db.execSQL(CommonString.CREATE_TABLE_INSERT_ADDITIONAL_PROMO_COMPLIANCE); db.execSQL(CommonString.CREATE_TABLE_INSERT_PROMO_SKU); @@ -97,6 +106,10 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.execSQL(TableBean.getMappingDisplayChecklist()); db.execSQL(TableBean.getNonWorkingReason()); + + db.execSQL(CommonString.CREATE_TABLE_INSERT_T2P_COMPLIANCE); + db.execSQL(CommonString.CREATE_TABLE_INSERT_T2P_GAPS); + db.execSQL(CommonString.CREATE_TABLE_INSERT_T2P_SKU); } @Override @@ -104,7 +117,10 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.execSQL("DROP TABLE IF EXISTS " + TableBean.getJourneyPlan()); } - public void deleteTableWithStoreID(String storeid, String process_id) { + public void deleteTableWithStoreID(String storeid) { + + db.delete( CommonString.TABLE_COVERAGE_DATA, CommonString.KEY_STORE_ID + "='" + storeid + "'", null); + } public void deleteAllTables() { @@ -1462,9 +1478,8 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } public void InsertAdditionalPromoData(Promo_Compliance_DataGetterSetter data, String category_id) { + ContentValues values = new ContentValues(); try { - ContentValues values = new ContentValues(); - values.put("STORE_ID", Integer.parseInt(data.getStore_id())); values.put("CATEGORY_ID", Integer.parseInt(category_id)); values.put("SKU_ID", Integer.parseInt(data.getSku_id())); @@ -1493,7 +1508,6 @@ public class GSKOrangeDB extends SQLiteOpenHelper { dbcursor.moveToFirst(); while (!dbcursor.isAfterLast()) { Promo_Compliance_DataGetterSetter cd = new Promo_Compliance_DataGetterSetter(); - cd.setStore_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("STORE_ID"))); cd.setCategory_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("CATEGORY_ID"))); cd.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); @@ -1503,7 +1517,6 @@ public class GSKOrangeDB extends SQLiteOpenHelper { cd.setIn_stock(dbcursor.getString(dbcursor.getColumnIndexOrThrow("IN_STOCK_VALUE"))); cd.setPromo_announcer(dbcursor.getString(dbcursor.getColumnIndexOrThrow("PROMO_ANNOUNCER_VALUE"))); cd.setRunning_pos(dbcursor.getString(dbcursor.getColumnIndexOrThrow("RUNNING_POS_VALUE"))); - list.add(cd); dbcursor.moveToNext(); } @@ -1517,11 +1530,11 @@ public class GSKOrangeDB extends SQLiteOpenHelper { return list; } + public void InsertPromoSkuData(ArrayList promoSkuListData, String category_id) { ContentValues values = new ContentValues(); try { db.beginTransaction(); - for (int i = 0; i < promoSkuListData.size(); i++) { Promo_Compliance_DataGetterSetter data = promoSkuListData.get(i); @@ -1581,7 +1594,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { //Gagan End Method - //Non Working data +//Non Working data public void insertNonWorkingData(NonWorkingReasonGetterSetter data) { db.delete("NON_WORKING_REASON", null, null); @@ -1664,8 +1677,9 @@ public class GSKOrangeDB extends SQLiteOpenHelper { Cursor dbcursor = null; try { + dbcursor = db.rawQuery("SELECT * from JOURNEY_PLAN " + - "where VISIT_DATE ='" + date + "' AND STORE_ID='" + store_id + "'", null); + "where VISIT_DATE ='" + date + "' AND STORE_ID'="+ store_id +"'", null); if (dbcursor != null) { dbcursor.moveToFirst(); @@ -2097,4 +2111,459 @@ public class GSKOrangeDB extends SQLiteOpenHelper { //Gagan end new code 1 + public void InsertStockDialog(AdditionalDialogGetterSetter data) { + ContentValues values = new ContentValues(); + + try { + + + values.put(CommonString.KEY_STORE_ID, data.getStore_id()); + values.put(CommonString.KEY_BRAND, data.getBrand()); + values.put(CommonString.KEY_BRAND_ID, data.getBrand_id()); + + // values.put(CommonString.KEY_DISPLAY_ID, data.getDisplay_id()); + + values.put(CommonString.KEY_QUANTITY, data.getQuantity()); + values.put(CommonString.KEY_SKU_ID, data.getSku_id()); + values.put(CommonString.KEY_SKUNAME, data.getSku_name()); + // values.put(CommonString.UNIQUE_KEY_ID, data.getUnique_id()); + + // values.put(CommonString.KEY_CATEGORY_ID, data.getCategory_id()); + + // values.put(CommonString.KEY_PROCESS_ID, data.getProcess_id()); + + + db.insert(CommonString.TABLE_INSERT_STOCK_DIALOG, null, values); + + + } catch (Exception ex) { + Log.d("Database Exception ", ex.getMessage()); + } + + } + + public ArrayList getDialogStock(String keyid) { + Cursor cursordata = null; + ArrayList productData = new ArrayList(); + + try { + + cursordata = db.rawQuery("SELECT * FROM STOCK_DIALOG WHERE COMMON_ID = '"+keyid + "'", null); + + if (cursordata != null) { + cursordata.moveToFirst(); + while (!cursordata.isAfterLast()) { + AdditionalDialogGetterSetter sb = new AdditionalDialogGetterSetter(); + + sb.setKEY_ID(cursordata.getString(cursordata + .getColumnIndexOrThrow(CommonString.KEY_ID))); + + sb.setBrand_id(cursordata.getString(cursordata + .getColumnIndexOrThrow(CommonString.KEY_BRAND_ID))); + + sb.setBrand(cursordata.getString(cursordata + .getColumnIndexOrThrow(CommonString.KEY_BRAND))); + + + sb.setQuantity(cursordata.getString(cursordata + .getColumnIndexOrThrow(CommonString.KEY_QUANTITY))); + + sb.setSku_id(cursordata.getString(cursordata + .getColumnIndexOrThrow(CommonString.KEY_SKU_ID))); + + sb.setSku_name(cursordata.getString(cursordata + .getColumnIndexOrThrow(CommonString.KEY_SKUNAME))); + + + productData.add(sb); + cursordata.moveToNext(); + } + cursordata.close(); + + } + + + } catch (Exception ex) { + + } + return productData; + + } + + public void deletedialogStockEntry(String id) { + try { + db.delete(CommonString.TABLE_INSERT_STOCK_DIALOG, "Id" + "='" + id + "'", null); + } catch (Exception e) { + System.out.println("" + e); + } + + } + + public void deleteStockEntry(String id) { + try { + db.delete(CommonString.TABLE_INSERT_STOCK_ADDITIONAL, "KEY_ID" + "='" + id + "'", null); + } catch (Exception e) { + System.out.println("" + e); + } + + } + + + + + public ArrayList getBrandMasterData(String store_id) { + Cursor cursordata = null; + ArrayList Data = new ArrayList(); + + try { + + cursordata = db.rawQuery("SELECT * FROM BRAND_MASTER ", null); + + if (cursordata != null) { + cursordata.moveToFirst(); + while (!cursordata.isAfterLast()) { + BrandMasterGetterSetter sb = new BrandMasterGetterSetter(); + + sb.setBRAND_ID(cursordata.getString(cursordata.getColumnIndexOrThrow("BRAND_ID"))); + + sb.setBRAND(cursordata.getString(cursordata.getColumnIndexOrThrow("BRAND"))); + + sb.setSUB_CATEGORY_ID(cursordata.getString(cursordata.getColumnIndexOrThrow("SUB_CATEGORY_ID"))); + + + + sb.setCOMPANY_ID(cursordata.getString(cursordata.getColumnIndexOrThrow("COMPANY_ID"))); + + sb.setBRAND_SEQUENCE(cursordata.getString(cursordata.getColumnIndexOrThrow("BRAND_SEQUENCE"))); + + Data.add(sb); + cursordata.moveToNext(); + } + cursordata.close(); + + } + + + } catch (Exception ex) { + + } + return Data; + + } + + + + public ArrayList getSKUMasterData(String store_id) { + Cursor cursordata = null; + ArrayList Data = new ArrayList(); + + try { + + cursordata = db.rawQuery("SELECT * FROM SKU_MASTER ", null); + + if (cursordata != null) { + cursordata.moveToFirst(); + while (!cursordata.isAfterLast()) { + SkuMasterGetterSetter sb = new SkuMasterGetterSetter(); + + sb.setSKU_ID(cursordata.getString(cursordata.getColumnIndexOrThrow("SKU_ID"))); + + sb.setSKU(cursordata.getString(cursordata.getColumnIndexOrThrow("SKU"))); + + sb.setBRAND_ID(cursordata.getString(cursordata.getColumnIndexOrThrow("BRAND_ID"))); + + + + sb.setMRP(cursordata.getString(cursordata.getColumnIndexOrThrow("MRP"))); + + sb.setSKU_SEQUENCE(cursordata.getString(cursordata.getColumnIndexOrThrow("SKU_SEQUENCE"))); + + Data.add(sb); + cursordata.moveToNext(); + } + cursordata.close(); + + } + + + } catch (Exception ex) { + + } + return Data; + + } + + public void InsertAdditionalData(AddittionalGetterSetter data,ArrayList dialog) { + ContentValues values = new ContentValues(); + ContentValues values1 = new ContentValues(); + try { + + + values.put("Store_Id", data.getStore_id()); + values.put("brand_name", data.getBrand()); + values.put("brand_id", data.getBrand_id()); + values.put("image_url", data.getImage()); + values.put("sku_id", data.getSku_id()); + values.put("sku_name", data.getSku()); + values.put("toggle_value", data.getBtn_toogle()); + + long key_id = db.insert(CommonString.TABLE_INSERT_STOCK_ADDITIONAL, null, values); + + for(int i=0;i getAdditionalStock(String store_id) { + Cursor cursordata = null; + ArrayList productData = new ArrayList(); + + try { + + cursordata = db.rawQuery("SELECT * FROM Stock_Additional_visibility WHERE Store_Id = '"+store_id + "'", null); + + + if (cursordata != null) { + cursordata.moveToFirst(); + while (!cursordata.isAfterLast()) { + AddittionalGetterSetter sb = new AddittionalGetterSetter(); + + + sb.setKey_id(cursordata.getString(cursordata + .getColumnIndexOrThrow("KEY_ID"))); + + + sb.setStore_id(cursordata.getString(cursordata + .getColumnIndexOrThrow("Store_Id"))); + + sb.setBrand_id(cursordata.getString(cursordata + .getColumnIndexOrThrow("brand_id"))); + + sb.setBrand(cursordata.getString(cursordata + .getColumnIndexOrThrow("brand_name"))); + + + sb.setImage(cursordata.getString(cursordata + .getColumnIndexOrThrow("image_url"))); + + sb.setSku_id(cursordata.getString(cursordata + .getColumnIndexOrThrow("sku_id"))); + + sb.setSku(cursordata.getString(cursordata + .getColumnIndexOrThrow("sku_name"))); + sb.setBtn_toogle(cursordata.getString(cursordata + .getColumnIndexOrThrow("toggle_value"))); + + + productData.add(sb); + cursordata.moveToNext(); + } + cursordata.close(); + + } + + + } catch (Exception ex) { + + } + return productData; + + } + public void updateStoreStatus(String storeid, String visitdate, + String status) { + + try { + ContentValues values = new ContentValues(); + values.put(CommonString.KEY_CHECKOUT_STATUS, status); + + db.update("JOURNEY_PLAN", values, CommonString.KEY_STORE_ID + "='" + storeid + "' AND " + CommonString.KEY_VISIT_DATE + "='" + visitdate + "'", null); + } catch (Exception e) { + + + } + } + + public void InsertT2PData(ArrayList data, String store_id, String category_id) { + db.delete(CommonString.TABLE_INSERT_T2P_COMPLIANCE, CommonString.KEY_STORE_ID + "='" + store_id + "' AND " + CommonString.KEY_CATEGORY_ID + "='" + category_id + "'", null); + + long l = 0; + + ContentValues values = new ContentValues(); + ContentValues values1 = new ContentValues(); + ContentValues values2 = new ContentValues(); + try { + for (int i = 0; i < data.size(); i++) { + + values.put(CommonString.KEY_STORE_ID, store_id); + values.put(CommonString.KEY_CATEGORY_ID, category_id); + values.put(CommonString.KEY_DISPLAY_ID, data.get(i).getDisplay_id()); + values.put(CommonString.KEY_BRAND_ID, data.get(i).getBrand_id()); + values.put(CommonString.KEY_BRAND, data.get(i).getBrand()); + values.put(CommonString.KEY_DISPLAY, data.get(i).getDisplay()); + values.put(CommonString.KEY_IMAGE, data.get(i).getImage()); + values.put(CommonString.KEY_REMARK, data.get(i).getRemark()); + values.put(CommonString.KEY_PRESENT, data.get(i).isPresent()); + + l = db.insert(CommonString.TABLE_INSERT_T2P_COMPLIANCE, null, values); + + ArrayList gaps = data.get(i).getGapsChecklist(); + + for (int j = 0; j < gaps.size(); j++) { + + values1.put(CommonString.KEY_COMMON_ID, l); + values1.put(CommonString.KEY_CHECKLIST_ID, gaps.get(j).getChecklist_id()); + values1.put(CommonString.KEY_DISPLAY_ID, gaps.get(j).getDisplay_id()); + values1.put(CommonString.KEY_CHECKLIST, gaps.get(j).getChecklist()); + values1.put(CommonString.KEY_PRESENT, gaps.get(j).isPresent()); + + db.insert(CommonString.TABLE_INSERT_T2P_GAPS, null, values1); + + } + + ArrayList sku = data.get(i).getSkulist(); + + for (int k = 0; k < sku.size(); k++) { + + values2.put(CommonString.KEY_COMMON_ID, l); + values2.put(CommonString.KEY_SKU_ID, sku.get(k).getSKU_ID()); + values2.put(CommonString.KEY_BRAND_ID, sku.get(k).getBRAND_ID()); + values2.put(CommonString.KEY_STOCK, sku.get(k).getSTOCK()); + values2.put(CommonString.KEY_BRAND, sku.get(k).getBRAND()); + values2.put(CommonString.KEY_SKU, sku.get(k).getSKU()); + + db.insert(CommonString.TABLE_INSERT_T2P_SKU, null, values2); + + } + + } + } catch (Exception ex) { + Log.d("Exception ", " in T2P_COMPLIANCE " + ex.toString()); + } + } + + // get T2P Compliance data + public ArrayList getT2pComplianceData(String store_id, String common_id) { + + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + try { + dbcursor = db.rawQuery("SELECT * FROM " + CommonString.TABLE_INSERT_T2P_COMPLIANCE + " where " + + CommonString.KEY_STORE_ID + "='" + store_id + "' AND " + + CommonString.KEY_CATEGORY_ID + "='" + common_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + T2PGetterSetter tp = new T2PGetterSetter(); + + tp.setKey_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_ID))); + tp.setDisplay_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_DISPLAY_ID))); + tp.setBrand_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND_ID))); + tp.setBrand(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND))); + tp.setDisplay(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_DISPLAY))); + tp.setImage(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_IMAGE))); + tp.setRemark(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_REMARK))); + tp.setPresent((dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_PRESENT)).equalsIgnoreCase("1"))); + + list.add(tp); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + return list; + } + return list; + } + + // get Gaps T2P data + public ArrayList getGapsData(String common_id) { + + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + try { + dbcursor = db.rawQuery("SELECT * FROM " + CommonString.TABLE_INSERT_T2P_GAPS + " where " + + CommonString.KEY_COMMON_ID + "='" + common_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + GapsChecklistGetterSetter gp = new GapsChecklistGetterSetter(); + + gp.setDisplay_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_DISPLAY_ID))); + gp.setChecklist_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_CHECKLIST_ID))); + gp.setChecklist(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_CHECKLIST))); + gp.setPresent((dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_PRESENT)).equalsIgnoreCase("1"))); + + list.add(gp); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + return list; + } + return list; + } + + // get T2P SKU data + public ArrayList getT2PSKUData(String common_id) { + + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + try { + dbcursor = db.rawQuery("SELECT * FROM " + CommonString.TABLE_INSERT_T2P_SKU + " where " + + CommonString.KEY_COMMON_ID + "='" + common_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + SkuGetterSetter gp = new SkuGetterSetter(); + + gp.setSKU_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_SKU_ID))); + gp.setBRAND_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND_ID))); + gp.setSTOCK(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_STOCK))); + gp.setBRAND(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND))); + gp.setSKU(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_SKU))); + + list.add(gp); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + return list; + } + return list; + } + } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/AdditionalDialogGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/AdditionalDialogGetterSetter.java new file mode 100644 index 0000000..a411572 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/AdditionalDialogGetterSetter.java @@ -0,0 +1,234 @@ +package cpm.com.gskmtorange.GetterSetter; + +public class AdditionalDialogGetterSetter { + public String Display_id,display,brand_id,brand, trg_quantity, image1, image2, category_id, + image3, BEFORE_QTY, camera1, camera2, camera3, AFTER_QTY, store_id, stock_count, question_id, question, answer, type, + KEY_ID, unique_id,image_url, sku_id,quantity, process_id, sku_name, stock_flag; + + public String getStock_flag() { + return stock_flag; + } + + public void setStock_flag(String stock_flag) { + this.stock_flag = stock_flag; + } + + public String getSku_name() { + return sku_name; + } + + public void setSku_name(String sku_name) { + this.sku_name = sku_name; + } + + public String getProcess_id() { + return process_id; + } + + public void setProcess_id(String process_id) { + this.process_id = process_id; + } + + public String getSku_id() { + return sku_id; + } + + public void setSku_id(String sku_id) { + this.sku_id = sku_id; + } + + public String getQuantity() { + return quantity; + } + + public void setQuantity(String quantity) { + this.quantity = quantity; + } + + public String getImage_url() { + return image_url; + } + + public void setImage_url(String image_url) { + this.image_url = image_url; + } + + public String getUnique_id() { + return unique_id; + } + + public void setUnique_id(String unique_id) { + this.unique_id = unique_id; + } + + public String getKEY_ID() { + return KEY_ID; + } + + public void setKEY_ID(String kEY_ID) { + KEY_ID = kEY_ID; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getCategory_id() { + return category_id; + } + + public void setCategory_id(String category_id) { + this.category_id = category_id; + } + + public String getQuestion_id() { + return question_id; + } + + public void setQuestion_id(String question_id) { + this.question_id = question_id; + } + + public String getQuestion() { + return question; + } + + public void setQuestion(String question) { + this.question = question; + } + + public String getAnswer() { + return answer; + } + + public void setAnswer(String answer) { + this.answer = answer; + } + + public String getStock_count() { + return stock_count; + } + + public void setStock_count(String stock_count) { + this.stock_count = stock_count; + } + + public String getStore_id() { + return store_id; + } + + public void setStore_id(String store_id) { + this.store_id = store_id; + } + + public String getCamera1() { + return camera1; + } + + public void setCamera1(String camera1) { + this.camera1 = camera1; + } + + public String getCamera2() { + return camera2; + } + + public void setCamera2(String camera2) { + this.camera2 = camera2; + } + + public String getCamera3() { + return camera3; + } + + public void setCamera3(String camera3) { + this.camera3 = camera3; + } + + public String getDisplay_id() { + return Display_id; + } + + public void setDisplay_id(String display_id) { + Display_id = display_id; + } + + public String getDisplay() { + return display; + } + + public void setDisplay(String display) { + this.display = display; + } + + public String getBrand_id() { + return brand_id; + } + + public void setBrand_id(String brand_id) { + this.brand_id = brand_id; + } + + public String getBrand() { + return brand; + } + + public void setBrand(String brand) { + this.brand = brand; + } + + public String getTrg_quantity() { + return trg_quantity; + } + + public void setTrg_quantity(String trg_quantity) { + this.trg_quantity = trg_quantity; + } + + public String getImage1() { + return image1; + } + + public void setImage1(String image1) { + this.image1 = image1; + } + + public String getImage2() { + return image2; + } + + public void setImage2(String image2) { + this.image2 = image2; + } + + public String getImage3() { + return image3; + } + + public void setImage3(String image3) { + this.image3 = image3; + } + + public String getBEFORE_QTY() { + return BEFORE_QTY; + } + + public void setBEFORE_QTY(String bEFORE_QTY) { + BEFORE_QTY = bEFORE_QTY; + } + + public String getAFTER_QTY() { + return AFTER_QTY; + } + + public void setAFTER_QTY(String aFTER_QTY) { + AFTER_QTY = aFTER_QTY; + } + + + +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/AddittionalGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/AddittionalGetterSetter.java new file mode 100644 index 0000000..c9c2dff --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/AddittionalGetterSetter.java @@ -0,0 +1,80 @@ +package cpm.com.gskmtorange.GetterSetter; + +/** + * Created by ashishc on 09-01-2017. + */ + +public class AddittionalGetterSetter { + + public String getBrand() { + return Brand; + } + + public void setBrand(String brand) { + Brand = brand; + } + + public String getBrand_id() { + return Brand_id; + } + + public void setBrand_id(String brand_id) { + Brand_id = brand_id; + } + + public String getSku() { + return Sku; + } + + public void setSku(String sku) { + Sku = sku; + } + + public String getSku_id() { + return Sku_id; + } + + public void setSku_id(String sku_id) { + Sku_id = sku_id; + } + + public String getStore_id() { + return Store_id; + } + + public void setStore_id(String store_id) { + Store_id = store_id; + } + + public String getImage() { + return Image; + } + + public void setImage(String image) { + Image = image; + } + + String Brand,Brand_id,Sku,Sku_id,Store_id,Image; + + public String getKey_id() { + return key_id; + } + + public void setKey_id(String key_id) { + this.key_id = key_id; + } + + String key_id; + + public String getBtn_toogle() { + return btn_toogle; + } + + public void setBtn_toogle(String btn_toogle) { + this.btn_toogle = btn_toogle; + } + + String btn_toogle; + + +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java index 4e7b3c2..900a856 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java @@ -39,6 +39,8 @@ import cpm.com.gskmtorange.GeoTag.GeoTagStoreList; import cpm.com.gskmtorange.GetterSetter.CoverageBean; import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.constant.CommonString; +import cpm.com.gskmtorange.dailyentry.AdditionalVisibility; +import cpm.com.gskmtorange.dailyentry.T2PComplianceActivity; import cpm.com.gskmtorange.dailyentry.StoreListActivity; import cpm.com.gskmtorange.download.DownloadActivity; import cpm.com.gskmtorange.gsk_dailyentry.CategoryListActivity; @@ -230,7 +232,7 @@ public class MainActivity extends AppCompatActivity } } else if (id == R.id.nav_geotag) { - + db.open(); storelist = db.getStoreData(date); @@ -246,6 +248,14 @@ public class MainActivity extends AppCompatActivity } else if (id == R.id.nav_exit) { + + Intent startDownload = new Intent(this,AdditionalVisibility.class); + startActivity(startDownload); + + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + + + } else if (id == R.id.nav_services) { /*Intent startDownload = new Intent(this,T2PComplianceActivity.class); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java index 383197b..46e60e4 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java @@ -26,6 +26,8 @@ public class CommonString { public static final String KEY_LOGIN_DATA = "LOGIN_DATA"; public static final String KEY_CULTURE_ID = "CULTURE_ID"; public static final String KEY_STORE_ID = "STORE_ID"; + public static final String KEY_Common_ID = "COMMON_ID"; + public static final String KEY_STORE_NAME = "STORE_NAME"; public static final String KEY_VISIT_DATE = "VISIT_DATE"; public static final String KEY_CAMERA_ALLOW = "CAMERA_ALLOW"; @@ -47,11 +49,33 @@ public class CommonString { public static final String KEY_REASON = "REASON"; public static final String KEY_COVERAGE_REMARK = "REMARK"; public static final String KEY_IMAGE = "IMAGE"; - public static final String KEY_ID = "Id"; + public static final String KEY_IMAGE_URL = "IMAGE_URL"; + public static final String KEY_ID = "Id"; public static final String KEY_MERCHANDISER_ID = "MERCHANDISER_ID"; + //KEYS RELATED TO T2P COMPLIANCE + + public static final String KEY_DISPLAY = "DISPLAY"; + public static final String KEY_REMARK = "REMARK"; + public static final String KEY_PRESENT = "PRESENT"; + public static final String KEY_COMMON_ID = "COMMON_ID"; + public static final String KEY_CHECKLIST_ID = "CHECKLIST_ID"; + public static final String KEY_CHECKLIST = "CHECKLIST"; + public static final String KEY_SKU = "SKU"; + public static final String KEY_STOCK = "STOCK"; + public static final String KEY_BRAND = "BRAND"; + public static final String KEY_BRAND_ID = "BRAND_ID"; + public static final String KEY_DISPLAY_ID = "DISPLAY_ID"; + public static final String KEY_QUANTITY = "QUANTITY"; + public static final String KEY_SKU_ID = "SKU_ID"; + public static final String KEY_SKUNAME = "SKUNAME"; + public static final String UNIQUE_KEY_ID = "UNIQUE_KEY_ID"; + public static final String KEY_CATEGORY_ID = "CATEGORY_ID"; + public static final String KEY_PROCESS_ID = "PROCESS_ID"; public static final String KEY_JOURNEY_PLAN = "JOURNEY_PLAN"; + public static final String TABLE_INSERT_STOCK_DIALOG = "STOCK_DIALOG"; + public static final String KEY_P = "P"; public static final String KEY_D = "D"; @@ -271,6 +295,54 @@ public class CommonString { + ")"; + + + public static final String CREATE_TABLE_STOCK_DIALOG = "CREATE TABLE " + + TABLE_INSERT_STOCK_DIALOG + " (" + KEY_ID + + " INTEGER PRIMARY KEY AUTOINCREMENT," + KEY_STORE_ID + " VARCHAR," + + KEY_BRAND_ID + " VARCHAR," + KEY_BRAND + " VARCHAR," + + KEY_DISPLAY_ID +" VARCHAR," + + KEY_SKU_ID + " VARCHAR," + KEY_QUANTITY + " VARCHAR," + KEY_Common_ID + " VARCHAR," + + KEY_CATEGORY_ID + " VARCHAR," + + KEY_SKUNAME + " VARCHAR," + + KEY_PROCESS_ID + " VARCHAR)"; + + + public static final String TABLE_INSERT_STOCK_ADDITIONAL = "Stock_Additional_visibility"; + + public static final String CREATE_TABLE_INSERT_STOCK_ADDITIONAL_VISIBILITY = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_STOCK_ADDITIONAL + + "(" + + "KEY_ID" + + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + + "Store_Id" + + " VARCHAR," + + + "brand_name" + + " VARCHAR," + + + "brand_id" + + " VARCHAR," + + + "image_url" + + " VARCHAR," + + + "sku_id" + + " VARCHAR," + + + "sku_name" + + " VARCHAR," + + + "toggle_value" + + " VARCHAR," + + + "IMAGE2" + + " VARCHAR" + + + ")"; + + public static final String TABLE_INSERT_ADDITIONAL_PROMO_COMPLIANCE = "Additional_Promo_Compliance_Data"; public static final String CREATE_TABLE_INSERT_ADDITIONAL_PROMO_COMPLIANCE = "CREATE TABLE IF NOT EXISTS " @@ -282,14 +354,11 @@ public class CommonString { + "STORE_ID" + " INTEGER," - + "CATEGORY_ID" - + " INTEGER," - - + "SKU_ID" + /*+ "SKU_ID" + " INTEGER," + "SKU" - + " VARCHAR," + + " VARCHAR,"*/ + "PROMO_ID" + " INTEGER," @@ -346,4 +415,64 @@ public class CommonString { + ")"; //Gagan Code End + + public static final String TABLE_INSERT_STOCK_ADDITIONAL_DATA = "ADDITIONAL_STOCK_DATA"; + public static final String CREATE_TABLE_STOCK_ADDITIONAL_STOCK_DATA = "CREATE TABLE " + + TABLE_INSERT_STOCK_ADDITIONAL_DATA + " (" + KEY_ID + + " INTEGER PRIMARY KEY AUTOINCREMENT," + KEY_STORE_ID + " VARCHAR," + + KEY_BRAND_ID + " VARCHAR," + KEY_BRAND + " VARCHAR," + + KEY_SKU_ID + " VARCHAR," + + KEY_SKUNAME + " VARCHAR," + + KEY_IMAGE + " VARCHAR)"; + + + + //Tables related to T2p Compliance + + public static final String TABLE_INSERT_T2P_COMPLIANCE = "T2P_COMPLIANCE"; + + public static final String CREATE_TABLE_INSERT_T2P_COMPLIANCE = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_T2P_COMPLIANCE + + "(" + + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + KEY_STORE_ID + " INTEGER," + + KEY_CATEGORY_ID + " INTEGER," + + KEY_BRAND_ID + " INTEGER," + + KEY_DISPLAY_ID + " INTEGER," + + KEY_BRAND + " VARCHAR," + + KEY_DISPLAY + " VARCHAR," + + KEY_IMAGE + " VARCHAR," + + KEY_REMARK + " VARCHAR," + + KEY_PRESENT + " VARCHAR" + + + ")"; + + + public static final String TABLE_INSERT_T2P_GAPS = "T2P_GAPS"; + + public static final String CREATE_TABLE_INSERT_T2P_GAPS = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_T2P_GAPS + + "(" + + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + KEY_COMMON_ID + " INTEGER," + + KEY_CHECKLIST_ID + " INTEGER," + + KEY_DISPLAY_ID + " INTEGER," + + KEY_CHECKLIST + " VARCHAR," + + KEY_PRESENT + " VARCHAR" + + ")"; + + + public static final String TABLE_INSERT_T2P_SKU = "T2P_SKU"; + + public static final String CREATE_TABLE_INSERT_T2P_SKU = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_T2P_SKU + + "(" + + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + KEY_COMMON_ID + " INTEGER," + + KEY_SKU_ID + " INTEGER," + + KEY_BRAND_ID + " INTEGER," + + KEY_STOCK + " INTEGER," + + KEY_BRAND+ " VARCHAR," + + KEY_SKU + " VARCHAR" + + ")"; } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java index 3fc58a1..ccb59e9 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java @@ -1,37 +1,1153 @@ package cpm.com.gskmtorange.dailyentry; +import android.app.Activity; +import android.app.AlertDialog; +import android.app.Dialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.SharedPreferences; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.net.Uri; +import android.os.Build; import android.os.Bundle; +import android.preference.PreferenceManager; +import android.provider.MediaStore; +import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.Toolbar; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.view.Window; +import android.widget.AdapterView; +import android.widget.ArrayAdapter; +import android.widget.BaseAdapter; +import android.widget.Button; +import android.widget.EditText; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.ListView; +import android.widget.RelativeLayout; +import android.widget.Spinner; +import android.widget.TextView; +import android.widget.ToggleButton; +import java.io.File; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.HashMap; +import java.util.List; + +import cpm.com.gskmtorange.Database.GSKOrangeDB; +import cpm.com.gskmtorange.GetterSetter.AdditionalDialogGetterSetter; +import cpm.com.gskmtorange.GetterSetter.AddittionalGetterSetter; import cpm.com.gskmtorange.R; +import cpm.com.gskmtorange.constant.CommonString; +import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.SkuGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; /** * Created by ashishc on 05-01-2017. */ -public class AdditionalVisibility extends AppCompatActivity{ +public class AdditionalVisibility extends AppCompatActivity implements View.OnClickListener, AdapterView.OnItemSelectedListener { + ArrayList list = new ArrayList(); + ArrayList listdata = new ArrayList(); + ArrayList uploadlist = new ArrayList(); + ArrayList defdata = new ArrayList(); + Spinner spinner_brand, spinner_sku; + Spinner spinner_brand_list, spinner_sku_list; + + public static ArrayList data = new ArrayList(); + ToggleButton btntoggle; + ImageView btnimage, btnedit; + Button btnsku, btnaddlayout; + GSKOrangeDB db; + ArrayList sku_list; + String brand_name = "", brand_id = "", SKU_name = "", SKU_ID = "", brand_list_name = "", brand_list_id = "", sku_list_name = "", sku_list_id = ""; + public ListView listview; + LinearLayout linearlay; + ArrayList brandList; + + ArrayList brand_list; + ArrayList skuMaster_list; + + + ArrayList empty_list = new ArrayList<>(); + String _pathforcheck, _path, str, msg; + private SharedPreferences preferences; + String store_id, date, intime, img_str, togglevalue = "1"; + ImageView img_cam, img_clicked; + Button btn_add, btn_close; + EditText Edt_txt; + MyAdaptorStock adapterData; + ListView listviewlay; + String errormsg; + MyAdaptorAdditionalStock adapteradditional; + AddittionalGetterSetter adGt; + LinearLayout brandlayout, diaplylayout, cameralayout; + //RelativeLayout skulayout; + + ////String brand_id,SKU_ID; protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.additionalvisibilitylayout); + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + setSupportActionBar(toolbar); + + getSupportActionBar().setHomeButtonEnabled(true); + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + + preferences = PreferenceManager.getDefaultSharedPreferences(this); + store_id = preferences.getString(CommonString.KEY_STORE_ID, null); + store_id = "2"; + date = preferences.getString(CommonString.KEY_DATE, null); + intime = preferences.getString(CommonString.KEY_STORE_IN_TIME, ""); + + db = new GSKOrangeDB(AdditionalVisibility.this); + db.open(); + spinner_brand_list = (Spinner) findViewById(R.id.spinner_Brand1); + spinner_sku_list = (Spinner) findViewById(R.id.spinner_SkuMaster); + + btntoggle = (ToggleButton) findViewById(R.id.btntoggle); + btnimage = (ImageView) findViewById(R.id.btn_image); + btnedit = (ImageView) findViewById(R.id.btn_edit); + btnsku = (Button) findViewById(R.id.btn_sku); + btnaddlayout = (Button) findViewById(R.id.btadd); + listviewlay = (ListView) findViewById(R.id.listviewlv); + brandlayout = (LinearLayout) findViewById(R.id.tv_brandlayout); + diaplylayout = (LinearLayout) findViewById(R.id.tv_displaylayout); + cameralayout = (LinearLayout) findViewById(R.id.tv_cameralayout); + + //skulayout = (RelativeLayout) findViewById(R.id.tv_skulayout); + + btntoggle.setChecked(true); + str = CommonString.FILE_PATH; + + ///band List + brand_list = db.getBrandMasterData(store_id); + BrandMasterGetterSetter brand = new BrandMasterGetterSetter(); + brand.setBRAND("select"); + brand_list.add(0, brand); + CustomAdapter adapter = new CustomAdapter(AdditionalVisibility.this, R.layout.custom_spinner_item, brand_list); + + spinner_brand_list.setAdapter(adapter); + + ///Display List + + skuMaster_list = db.getSKUMasterData(store_id); + + SkuMasterGetterSetter select = new SkuMasterGetterSetter(); + select.setSKU("Select"); + skuMaster_list.add(0, select); + CustomSkuMasterAdpter skuadapter = new CustomSkuMasterAdpter(AdditionalVisibility.this, R.layout.custom_spinner_item, skuMaster_list); + spinner_sku_list.setAdapter(skuadapter); + + spinner_brand_list.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { + + if (position != 0) { + + brand_list_name = brand_list.get(position).getBRAND().get(0); + brand_list_id = brand_list.get(position).getBRAND_ID().get(0); + + } + } + + @Override + public void onNothingSelected(AdapterView parent) { + + } + }); + + spinner_sku_list.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { + + if (position != 0) { + + sku_list_name = skuMaster_list.get(position).getSKU().get(0); + sku_list_id = skuMaster_list.get(position).getSKU_ID().get(0); + + } + } + + @Override + public void onNothingSelected(AdapterView parent) { + + } + }); + + listdata = db.getAdditionalStock(store_id); + + for (int k = 0; k < listdata.size(); k++) { + String KeyID = listdata.get(k).getKey_id(); + + uploadlist = db.getDialogStock(KeyID); + + } + + + if (listdata.size() > 0) { + adapteradditional = new MyAdaptorAdditionalStock(AdditionalVisibility.this, listdata); + listviewlay.setAdapter(adapteradditional); + listviewlay.invalidateViews(); + } + + btnaddlayout.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + + adGt = new AddittionalGetterSetter(); + adGt.setBrand(brand_list_name); + adGt.setBrand_id(brand_list_id); + adGt.setImage(img_str); + adGt.setSku(sku_list_name); + adGt.setSku_id(sku_list_id); + adGt.setStore_id(store_id); + adGt.setBtn_toogle(togglevalue); + + if (validateData(adGt, defdata)) { + + AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder( + AdditionalVisibility.this); + + // set title + alertDialogBuilder.setTitle("Do You Want To Save"); + + // set dialog message + alertDialogBuilder + .setMessage("") + .setCancelable(false) + .setPositiveButton("Yes", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + + db.InsertAdditionalData(adGt, defdata); + + spinner_brand_list.setSelection(0); + + spinner_sku_list.setSelection(0); + + img_str = ""; + brand_list_name = ""; + brand_list_id = ""; + sku_list_name = ""; + sku_list_id = ""; + + defdata.clear(); + + btntoggle.setChecked(true); + + btnimage.setBackgroundResource(R.mipmap.camera); + togglevalue = "1"; + brandlayout.setVisibility(View.VISIBLE); + diaplylayout.setVisibility(View.VISIBLE); + cameralayout.setVisibility(View.VISIBLE); + btnsku.setVisibility(View.VISIBLE); + + listdata = db.getAdditionalStock(store_id); + + if (listdata.size() > 0) { + adapteradditional = new MyAdaptorAdditionalStock(AdditionalVisibility.this, listdata); + listviewlay.setAdapter(adapteradditional); + listviewlay.invalidateViews(); + } else { + + } + + } + }) + .setNegativeButton("No", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + // if this button is clicked, just close + // the dialog box and do nothing + dialog.cancel(); + } + }); + + // create alert dialog + AlertDialog alertDialog = alertDialogBuilder.create(); + + // show it + alertDialog.show(); + + } else { + Snackbar.make(view, errormsg, Snackbar.LENGTH_LONG).setAction("Action", null).show(); + } + + } + }); + + btntoggle.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + + if (btntoggle.isChecked()) { + togglevalue = "1"; + + brandlayout.setVisibility(View.VISIBLE); + diaplylayout.setVisibility(View.VISIBLE); + cameralayout.setVisibility(View.VISIBLE); + btnsku.setVisibility(View.VISIBLE); + + } else { + togglevalue = "0"; + + brandlayout.setVisibility(View.INVISIBLE); + diaplylayout.setVisibility(View.INVISIBLE); + cameralayout.setVisibility(View.INVISIBLE); + btnsku.setVisibility(View.INVISIBLE); + } + } + }); + + btnimage.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + _pathforcheck = store_id + "Store" + + "Image" + date.replace("/", "") + getCurrentTime().replace(":", "") + ".jpg"; + + _path = CommonString.FILE_PATH + _pathforcheck; + intime = getCurrentTime(); + startCameraActivity(); + + } + }); + + + btnsku.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + showSkuDialog(); + + } + }); + + } + + public String getCurrentTime() { + + Calendar m_cal = Calendar.getInstance(); + + SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss:mmm"); + String cdate = formatter.format(m_cal.getTime()); + + /* String intime = m_cal.get(Calendar.HOUR_OF_DAY) + ":" + + m_cal.get(Calendar.MINUTE) + ":" + m_cal.get(Calendar.SECOND);*/ + + return cdate; + + } + + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { } + @Override + public void onNothingSelected(AdapterView parent) { + + } + public class CustomAdapter extends ArrayAdapter { + + private Activity activity; + private ArrayList data; + BrandMasterGetterSetter tempValues = null; + LayoutInflater inflater; + + /************* + * CustomAdapter Constructor + *****************/ + public CustomAdapter( + AdditionalVisibility activitySpinner, + int textViewResourceId, + ArrayList objects + + ) { + super(activitySpinner, textViewResourceId, objects); + + /********** Take passed values **********/ + activity = activitySpinner; + data = objects; + /*********** Layout inflator to call external xml layout () **********************/ + inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + + } + + @Override + public View getDropDownView(int position, View convertView, ViewGroup parent) { + return getCustomView(position, convertView, parent); + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + return getCustomView(position, convertView, parent); + } + + // This funtion called for each row ( Called data.size() times ) + public View getCustomView(int position, View convertView, ViewGroup parent) { + + /********** Inflate spinner_rows.xml file for each row ( Defined below ) ************/ + View row = inflater.inflate(R.layout.custom_spinner_item, parent, false); + + /***** Get each Model object from Arraylist ********/ + tempValues = null; + tempValues = (BrandMasterGetterSetter) data.get(position); + + TextView label = (TextView) row.findViewById(R.id.tv_text); + + if (position == 0) { + + // Default selected Spinner item + label.setText("Select"); + //sub.setText(""); + } else { + // Set values for spinner each row + label.setText(tempValues.getBRAND().get(0)); + } + + return row; + } + } + + public class CustomSkuAdapter extends ArrayAdapter { + + private Activity activity; + private ArrayList data; + SkuGetterSetter tempValues = null; + LayoutInflater inflater; + + /************* + * CustomAdapter Constructor + *****************/ + public CustomSkuAdapter( + AdditionalVisibility activitySpinner, + int textViewResourceId, + ArrayList objects + + ) { + super(activitySpinner, textViewResourceId, objects); + + /********** Take passed values **********/ + activity = activitySpinner; + data = objects; + /*********** Layout inflator to call external xml layout () **********************/ + inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + + } + + @Override + public View getDropDownView(int position, View convertView, ViewGroup parent) { + return getCustomView(position, convertView, parent); + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + return getCustomView(position, convertView, parent); + } + + // This funtion called for each row ( Called data.size() times ) + public View getCustomView(int position, View convertView, ViewGroup parent) { + + /********** Inflate spinner_rows.xml file for each row ( Defined below ) ************/ + View row = inflater.inflate(R.layout.custom_spinner_item, parent, false); + + /***** Get each Model object from Arraylist ********/ + tempValues = null; + tempValues = (SkuGetterSetter) data.get(position); + + TextView label = (TextView) row.findViewById(R.id.tv_text); + + if (position == 0) { + + // Default selected Spinner item + label.setText("Select"); + //sub.setText(""); + } else { + // Set values for spinner each row + label.setText(tempValues.getSKU()); + } + + return row; + } + } + public class CustomSkuMasterAdpter extends ArrayAdapter { + + private Activity activity; + private ArrayList data; + SkuMasterGetterSetter tempValues = null; + LayoutInflater inflater; + + /************* + * CustomAdapter Constructor + *****************/ + public CustomSkuMasterAdpter( + AdditionalVisibility activitySpinner, + int textViewResourceId, + ArrayList objects + + ) { + super(activitySpinner, textViewResourceId, objects); + + /********** Take passed values **********/ + activity = activitySpinner; + data = objects; + /*********** Layout inflator to call external xml layout () **********************/ + inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + + } + + @Override + public View getDropDownView(int position, View convertView, ViewGroup parent) { + return getCustomView(position, convertView, parent); + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + return getCustomView(position, convertView, parent); + } + + // This funtion called for each row ( Called data.size() times ) + public View getCustomView(int position, View convertView, ViewGroup parent) { + + /********** Inflate spinner_rows.xml file for each row ( Defined below ) ************/ + View row = inflater.inflate(R.layout.custom_spinner_item, parent, false); + + /***** Get each Model object from Arraylist ********/ + tempValues = null; + tempValues = (SkuMasterGetterSetter) data.get(position); + + TextView label = (TextView) row.findViewById(R.id.tv_text); + + if (position == 0) { + + // Default selected Spinner item + label.setText("Select"); + //sub.setText(""); + } else { + // Set values for spinner each row + label.setText(tempValues.getSKU().get(0)); + } + + return row; + } + } + protected void startCameraActivity() { + + try { + + Log.i("MakeMachine", "startCameraActivity()"); + File file = new File(_path); + Uri outputFileUri = Uri.fromFile(file); + + String defaultCameraPackage = ""; + final PackageManager packageManager = getPackageManager(); + List list = packageManager.getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES); + for (int n = 0; n < list.size(); n++) { + if ((list.get(n).flags & ApplicationInfo.FLAG_SYSTEM) == 1) { + Log.e("TAG", "Installed Applications : " + list.get(n).loadLabel(packageManager).toString()); + Log.e("TAG", "package name : " + list.get(n).packageName); + + if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { + if (list.get(n).loadLabel(packageManager).toString().equalsIgnoreCase("Camera")) { + defaultCameraPackage = list.get(n).packageName; + break; + } + } else { + if (list.get(n).loadLabel(packageManager).toString().equalsIgnoreCase("Gallery")) { + defaultCameraPackage = list.get(n).packageName; + break; + } + } + } + + } + + Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); + intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); + intent.setPackage(defaultCameraPackage); + startActivityForResult(intent, 0); + } catch (Exception e) { + + e.printStackTrace(); + } + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + + Log.i("MakeMachine", "resultCode: " + resultCode); + switch (resultCode) { + case 0: + Log.i("MakeMachine", "User cancelled"); + break; + + case -1: + + if (_pathforcheck != null && !_pathforcheck.equals("")) { + if (new File(str + _pathforcheck).exists()) { + + btnimage.setBackgroundResource(R.mipmap.camera_done); + + img_str = _pathforcheck; + _pathforcheck = ""; + } + } + + break; + } + + super.onActivityResult(requestCode, resultCode, data); + } + public void showSkuDialog() { + final ArrayList brandList = db.getBrandT2PData("1", "1", "1"); + BrandMasterGetterSetter brand = new BrandMasterGetterSetter(); + brand.setBRAND("select"); + brandList.add(0, brand); + // ArrayList skuMasterGetterSetterArrayList = db.getSkuT2PData("1", "1", "1",) + final Dialog dialog = new Dialog(AdditionalVisibility.this); + dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); + dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); + dialog.setContentView(R.layout.additionalvisibilitydialoglayout); + //pb = (ProgressBar) dialog.findViewById(R.id.progressBar1); + //dialog.setCancelable(false); + spinner_brand = (Spinner) dialog.findViewById(R.id.spinner_brand); + spinner_sku = (Spinner) dialog.findViewById(R.id.spinner_sku); + btn_add = (Button) dialog.findViewById(R.id.btn_add); + btn_close = (Button) dialog.findViewById(R.id.btn_cancel); -} + Edt_txt = (EditText) dialog.findViewById(R.id.et_stock); + listview = (ListView) dialog.findViewById(R.id.lv); + linearlay = (LinearLayout) dialog.findViewById(R.id.list_layout); + + //list = db.getDialogStock(store_id); + + + if (defdata.size() > 0) { + linearlay.setVisibility(View.VISIBLE); + adapterData = new MyAdaptorStock(AdditionalVisibility.this, defdata); + listview.setAdapter(adapterData); + listview.invalidateViews(); + } else { + + } + + + spinner_sku.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { + + if (position != 0) { + + SKU_ID = sku_list.get(position).getSKU_ID(); + + SKU_name = sku_list.get(position).getSKU(); + + } + } + + @Override + public void onNothingSelected(AdapterView parent) { + + } + }); + + btn_close.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + dialog.cancel(); + } + }); + + + btn_add.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + AdditionalDialogGetterSetter ab = new AdditionalDialogGetterSetter(); + + + ab.setBrand(brand_name); + ab.setBrand_id(brand_id); + + //ab.setDisplay_id(data.get(position).getDisplay_id()); + ab.setStore_id(store_id); + // ab.setUnique_id(data.get(position).getUnique_id()); + ab.setSku_id(SKU_ID); + ab.setSku_name(SKU_name); + // ab.setProcess_id(process_id); + ab.setQuantity(Edt_txt.getText().toString()); + // ab.setCategory_id(category_id); + + + if (validateDialogData(ab)) { + + + defdata.add(ab); + // db.InsertStockDialog(ab); + + spinner_brand.setSelection(0); + spinner_sku.setSelection(0); + Edt_txt.setText(""); + + // list = db.getDialogStock(store_id); + linearlay.setVisibility(View.VISIBLE); + adapterData = new MyAdaptorStock(AdditionalVisibility.this, defdata); + listview.setAdapter(adapterData); + listview.invalidateViews(); + + + } else { + Snackbar.make(v, msg, Snackbar.LENGTH_LONG).setAction("Action", null).show(); + } + + + // dialog.cancel(); + } + }); + + + // Create custom adapter object ( see below CustomAdapter.java ) + CustomAdapter adapter = new CustomAdapter(AdditionalVisibility.this, R.layout.custom_spinner_item, brandList); + // Set adapter to spinner + spinner_brand.setAdapter(adapter); + + ArrayList empty_list = new ArrayList<>(); + SkuGetterSetter select = new SkuGetterSetter(); + select.setSKU("Select"); + empty_list.add(select); + CustomSkuAdapter skuadapter = new CustomSkuAdapter(AdditionalVisibility.this, R.layout.custom_spinner_item, empty_list); + spinner_sku.setAdapter(skuadapter); + + spinner_brand.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { + + if (position != 0) { + + brand_id = brandList.get(position).getBRAND_ID().get(0); + brand_name = brandList.get(position).getBRAND().get(0); + + sku_list = db.getSkuT2PData("1", "1", "1", brand_id); + SkuGetterSetter select = new SkuGetterSetter(); + select.setSKU("Select"); + sku_list.add(0, select); + // Create custom adapter object ( see below CustomSkuAdapter.java ) + CustomSkuAdapter skuadapter = new CustomSkuAdapter(AdditionalVisibility.this, R.layout.custom_spinner_item, sku_list); + // Set adapter to spinner + spinner_sku.setAdapter(skuadapter); + + spinner_sku.setSelection(0); + + } + } + + @Override + public void onNothingSelected(AdapterView parent) { + + } + }); + + + spinner_sku.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { + + if (position != 0) { + + SKU_ID = sku_list.get(position).getSKU_ID(); + + SKU_name = sku_list.get(position).getSKU(); + + } + } + + @Override + public void onNothingSelected(AdapterView parent) { + + } + }); + + + dialog.show(); + + } + + + @Override + public void onClick(View arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + // Handle action bar item clicks here. The action bar will + // automatically handle clicks on the Home/Up button, so long + // as you specify a parent activity in AndroidManifest.xml. + int id = item.getItemId(); + + if (id == android.R.id.home) { + + // NavUtils.navigateUpFromSameTask(this); + finish(); + + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + + } + + return super.onOptionsItemSelected(item); + } + + + public class MyAdaptorStock extends BaseAdapter { + + private LayoutInflater mInflater; + private Context mcontext; + private ArrayList list; + + public MyAdaptorStock(Activity activity, ArrayList list1) { + + mInflater = LayoutInflater.from(getBaseContext()); + mcontext = activity; + list = list1; + } + + @Override + public int getCount() { + + return list.size(); + } + + @Override + public Object getItem(int position1) { + + return position1; + } + + @Override + public long getItemId(int position1) { + + return position1; + } + + class ViewHolder { + TextView brand, qty_bought, display; + Button save, delete; + + } + + @Override + public View getView(final int position1, View convertView, ViewGroup parent) { + + final ViewHolder holder; + + if (convertView == null) { + + convertView = mInflater + .inflate(R.layout.additionaldialoglayout, null); + holder = new ViewHolder(); + + holder.brand = (TextView) convertView.findViewById(R.id.brand_name); + + holder.display = (TextView) convertView.findViewById(R.id.display_name); + holder.qty_bought = (TextView) convertView.findViewById(R.id.qty_bought); + + + holder.delete = (Button) convertView.findViewById(R.id.delete_btn); + + convertView.setTag(holder); + } else { + holder = (ViewHolder) convertView.getTag(); + } + + holder.delete.setOnClickListener(new View.OnClickListener() { + + @Override + public void onClick(View v) { + + AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder( + AdditionalVisibility.this); + + // set title + alertDialogBuilder.setTitle("Do You Want To Delete?"); + + // set dialog message + alertDialogBuilder + .setMessage("Click Yes To Delete!") + .setCancelable(false) + .setPositiveButton("Yes", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + + // db.deletedialogStockEntry(list.get(position1).getKEY_ID()); + + defdata.remove(position1); + + adapterData.notifyDataSetChanged(); + + /* list = db.getTOTStockEntryDetail(store_id, category_id, process_id, + list.get(position1).getDisplay_id(),list.get(position1).getUnique_id());*/ + + + //list = db.getDialogStock(store_id); + + listview.setAdapter(new MyAdaptorStock(AdditionalVisibility.this, defdata)); + listview.invalidateViews(); + + } + }) + .setNegativeButton("No", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + // if this button is clicked, just close + // the dialog box and do nothing + dialog.cancel(); + } + }); + + // create alert dialog + AlertDialog alertDialog = alertDialogBuilder.create(); + + // show it + alertDialog.show(); + + } + }); + + + holder.brand.setText(list.get(position1).getBrand().toString()); + holder.display.setText(list.get(position1).getSku_name().toString()); + + holder.qty_bought.setText(list.get(position1).getQuantity()); + + + holder.brand.setId(position1); + holder.display.setId(position1); + holder.qty_bought.setId(position1); + holder.delete.setId(position1); + + return convertView; + } + } + + + public class MyAdaptorAdditionalStock extends BaseAdapter { + + private LayoutInflater mInflater; + private Context mcontext; + private ArrayList list; + + public MyAdaptorAdditionalStock(Activity activity, ArrayList list1) { + + mInflater = LayoutInflater.from(getBaseContext()); + mcontext = activity; + list = list1; + } + + @Override + public int getCount() { + + return list.size(); + } + + @Override + public Object getItem(int position1) { + + return position1; + } + + @Override + public long getItemId(int position1) { + + return position1; + } + + class ViewHolder { + TextView brand, qty_bought, display; + Button save, delete; + + } + + @Override + public View getView(final int position1, View convertView, ViewGroup parent) { + + final ViewHolder holder; + + if (convertView == null) { + + convertView = mInflater + .inflate(R.layout.additionallistlayout, null); + holder = new ViewHolder(); + + holder.brand = (TextView) convertView.findViewById(R.id.brand_name); + + holder.display = (TextView) convertView.findViewById(R.id.display_name); + holder.qty_bought = (TextView) convertView.findViewById(R.id.qty_bought); + + + holder.delete = (Button) convertView.findViewById(R.id.delete_btn); + + convertView.setTag(holder); + } else { + holder = (ViewHolder) convertView.getTag(); + } + + holder.delete.setOnClickListener(new View.OnClickListener() { + + @Override + public void onClick(View v) { + + AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder( + AdditionalVisibility.this); + + // set title + alertDialogBuilder.setTitle("Do You Want To Delete?"); + + // set dialog message + alertDialogBuilder + .setMessage("Click Yes To Delete!") + .setCancelable(false) + .setPositiveButton("Yes", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + + + db.deleteStockEntry(listdata.get(position1).getKey_id()); + + adapteradditional.notifyDataSetChanged(); + + listdata = db.getAdditionalStock(store_id); + + adapteradditional = new MyAdaptorAdditionalStock(AdditionalVisibility.this, listdata); + listviewlay.setAdapter(adapteradditional); + listviewlay.invalidateViews(); + + + } + }) + .setNegativeButton("No", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + // if this button is clicked, just close + // the dialog box and do nothing + dialog.cancel(); + } + }); + + // create alert dialog + AlertDialog alertDialog = alertDialogBuilder.create(); + + // show it + alertDialog.show(); + + } + }); + + holder.brand.setText(list.get(position1).getBrand().toString()); + holder.display.setText(list.get(position1).getSku().toString()); + + + holder.brand.setId(position1); + holder.display.setId(position1); + holder.qty_bought.setId(position1); + holder.delete.setId(position1); + + return convertView; + } + } + + boolean validateData(AddittionalGetterSetter data, ArrayList dialog) { + boolean flag = true; + + String brandid = data.getBrand_id(); + String skuid = data.getSku_id(); + + String imageu = data.getImage(); + String toggleid = data.getBtn_toogle(); + + + if (toggleid.equalsIgnoreCase("0")) { + flag = true; + } else { + + + if (brandid.equalsIgnoreCase("") || skuid.equalsIgnoreCase("")) { + flag = false; + + errormsg = "Please Select dropdown"; + + } else if (imageu == null || imageu.equalsIgnoreCase("")) { + flag = false; + + errormsg = "Please Take a image"; + + } else if (dialog.size() == 0) { + + errormsg = "Please fill sku data"; + flag = false; + + + } else { + flag = true; + } + + + } + + + return flag; + } + + boolean validateDialogData(AdditionalDialogGetterSetter data) { + boolean flag = true; + + String brandid = data.getBrand_id(); + String displayid = data.getSku_id(); + String QTy = data.getQuantity(); + + + if (brandid.equalsIgnoreCase("") || brandid == null) { + flag = false; + + msg = "Please Select Dropdown"; + } else if (displayid == null || displayid.equalsIgnoreCase("")) { + flag = false; + msg = "Please Select Dropdown"; + } else if (QTy.equalsIgnoreCase("") || QTy == null) { + flag = false; + msg = "Please enter Quantity"; + } else { + flag = true; + } + + + return flag; + } + + +} \ No newline at end of file diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java index 0b6e749..9e658ee 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java @@ -42,6 +42,7 @@ import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; import cpm.com.gskmtorange.download.DownloadActivity; +import cpm.com.gskmtorange.gsk_dailyentry.CategoryListActivity; /** * Created by ashishc on 29-12-2016. @@ -250,7 +251,6 @@ public class StoreListActivity extends AppCompatActivity { store_id = current.getSTORE_ID(); - if (current.getUPLOAD_STATUS().equalsIgnoreCase(CommonString.KEY_U)) { Snackbar.make(v, R.string.title_store_list_activity_store_already_done, Snackbar.LENGTH_LONG).setAction("Action", null).show(); } else if (current.getUPLOAD_STATUS().equalsIgnoreCase(CommonString.KEY_D)) { @@ -361,13 +361,29 @@ public class StoreListActivity extends AppCompatActivity { public void onCheckedChanged(RadioGroup group, int checkedId) { // find which radio button is selected if (checkedId == R.id.yes) { - - Intent in = new Intent(StoreListActivity.this, StoreimageActivity.class); - startActivity(in); - - overridePendingTransition(R.anim.activity_in, R.anim.activity_out); - - dialog.cancel(); + boolean flag=true; + if(coverage.size()>0) { + for (int i = 0; i < coverage.size(); i++) { + if (store_id.equals(coverage.get(i).getStoreId())) { + flag=false; + break; + } + } + } + if(flag==true) + { + Intent in = new Intent(StoreListActivity.this, StoreimageActivity.class); + startActivity(in); + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + dialog.cancel(); + } + else + { + Intent in=new Intent(StoreListActivity.this,CategoryListActivity.class); + startActivity(in); + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + dialog.cancel(); + } } else if (checkedId == R.id.no) { @@ -383,6 +399,9 @@ public class StoreListActivity extends AppCompatActivity { int id) { + UpdateStore(store_id); + + Intent in = new Intent(StoreListActivity.this, NonWorkingReason.class); startActivity(in); @@ -404,8 +423,6 @@ public class StoreListActivity extends AppCompatActivity { } else { - - Intent in = new Intent(StoreListActivity.this, NonWorkingReason.class); startActivity(in); } @@ -439,5 +456,12 @@ public class StoreListActivity extends AppCompatActivity { return result_flag; } + public void UpdateStore(String storeid) { + db.open(); + db.deleteTableWithStoreID(storeid); + + db.updateStoreStatus(storeid, storelist.get(0).getVISIT_DATE(), "N"); + + } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java index 5652d8c..1ae2a9e 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java @@ -4,12 +4,15 @@ import android.app.Activity; import android.app.Dialog; import android.content.ActivityNotFoundException; import android.content.Context; +import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.graphics.Color; +import android.graphics.Typeface; import android.graphics.drawable.ColorDrawable; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Build; import android.os.Bundle; @@ -17,6 +20,7 @@ import android.preference.PreferenceManager; import android.provider.MediaStore; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; +import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; @@ -47,8 +51,11 @@ import java.util.Calendar; import java.util.List; import cpm.com.gskmtorange.Database.GSKOrangeDB; +import cpm.com.gskmtorange.LoginActivity; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; +import cpm.com.gskmtorange.fonts.FontManager; +import cpm.com.gskmtorange.fonts.TextDrawable; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.GapsChecklistGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuGetterSetter; @@ -64,29 +71,31 @@ public class T2PComplianceActivity extends AppCompatActivity { T2PAdapter t2PAdapter; RecyclerView rec_t2p; - String categoryName, categoryId, storeId; + String categoryName, categoryId; private SharedPreferences preferences; String store_id, visit_date, username, intime, date, keyAccount_id, class_id, storeType_id; String path = "", str = CommonString.FILE_PATH, _pathforcheck = "", img = ""; int child_position = -1; - /** - * ATTENTION: This was auto-generated to implement the App Indexing API. - * See https://g.co/AppIndexing/AndroidStudio for more information. - */ - private GoogleApiClient client; + + String error_msg; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_t2_pcompliance); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + + //Intent data + categoryName = getIntent().getStringExtra("categoryName"); + categoryId = getIntent().getStringExtra("categoryId"); + // toolbar.setTitle(R.string.title_activity_t2_pcompliance + " - " + categoryName); + setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); - db = new GSKOrangeDB(T2PComplianceActivity.this); db.open(); @@ -108,24 +117,47 @@ public class T2PComplianceActivity extends AppCompatActivity { fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - Snackbar.make(view, "Data Saved", Snackbar.LENGTH_LONG) - .setAction("Action", null).show(); - finish(); + + if (isValid()) { + + db.InsertT2PData(t2PGetterSetters, store_id, categoryId); + + Snackbar.make(view, "Data Saved", Snackbar.LENGTH_LONG) + .setAction("Action", null).show(); + + finish(); + } else { + Snackbar.make(view, error_msg, Snackbar.LENGTH_LONG) + .setAction("Action", null).show(); + } + } }); - t2PGetterSetters = db.getT2PDefaultData(store_id); + t2PGetterSetters = db.getT2pComplianceData(store_id, categoryId); + + if (t2PGetterSetters.size() == 0) { + t2PGetterSetters = db.getT2PDefaultData(store_id); + } else { + for (int i = 0; i < t2PGetterSetters.size(); i++) { + ArrayList gapsList = db.getGapsData(t2PGetterSetters.get(i).getKey_id()); + ArrayList skuList = db.getT2PSKUData(t2PGetterSetters.get(i).getKey_id()); + + t2PGetterSetters.get(i).setGapsChecklist(gapsList); + t2PGetterSetters.get(i).setSkulist(skuList); + } + + } if (t2PGetterSetters.size() > 0) { - for (int i = 0; i < t2PGetterSetters.size(); i++) { + /* for (int i = 0; i < t2PGetterSetters.size(); i++) { ArrayList gapsChecklist = db.getGapsDefaultData(t2PGetterSetters.get(i).getDisplay_id()); t2PGetterSetters.get(i).setGapsChecklist(gapsChecklist); - } - + }*/ rec_t2p.setLayoutManager(new LinearLayoutManager(getApplicationContext())); t2PAdapter = new T2PAdapter(t2PGetterSetters); @@ -133,9 +165,6 @@ public class T2PComplianceActivity extends AppCompatActivity { } - // ATTENTION: This was auto-generated to implement the App Indexing API. - // See https://g.co/AppIndexing/AndroidStudio for more information. - client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build(); } @Override @@ -168,11 +197,16 @@ public class T2PComplianceActivity extends AppCompatActivity { holder.tv_brand.setText(mItem.getBrand()); holder.tv_display.setText(mItem.getDisplay().trim()); + //holder.tv_display.setTypeface(FontManager.getTypeface(getApplicationContext(),FontManager.FONTAWESOME)); + + /* Typeface iconFont = FontManager.getTypeface(getApplicationContext(), FontManager.FONTAWESOME); + FontManager.markAsIconContainer(findViewById(R.id.icons_container), iconFont); +*/ holder.btn_gaps.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - showGapsDialog(mItem.getGapsChecklist()); + showGapsDialog(mItem); } }); @@ -181,11 +215,7 @@ public class T2PComplianceActivity extends AppCompatActivity { @Override public void onClick(View v) { - if (((ToggleButton) v).getText().toString().equalsIgnoreCase("Yes")) { - mItem.setPresent(true); - } else { - mItem.setPresent(false); - } + mItem.setPresent(((ToggleButton) v).getText().toString().equalsIgnoreCase("Yes")); t2PAdapter.notifyDataSetChanged(); } @@ -217,13 +247,24 @@ public class T2PComplianceActivity extends AppCompatActivity { } if (mItem.getImage().equals("")) { - holder.img_cam.setBackgroundResource(R.drawable.cam_deactive); + holder.img_cam.setBackgroundResource(R.mipmap.camera); } else { - holder.img_cam.setBackgroundResource(R.drawable.cam_active); + holder.img_cam.setBackgroundResource(R.mipmap.camera_done); } holder.toggle_btn.setChecked(mItem.isPresent()); + if (mItem.getGapsChecklist().size() > 0) { + holder.btn_gaps.setBackgroundColor(getResources().getColor(R.color.green)); + } else { + holder.btn_gaps.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); + } + + if (mItem.getSkulist().size() > 0) { + holder.btn_sku.setBackgroundColor(getResources().getColor(R.color.green)); + } else { + holder.btn_sku.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); + } } @@ -261,8 +302,16 @@ public class T2PComplianceActivity extends AppCompatActivity { } } - public void showGapsDialog(ArrayList gapsChecklist) { - //ArrayList gapsChecklist = db.getGapsDefaultData(display_id); + public void showGapsDialog(final T2PGetterSetter t2p) { + + final ArrayList gapsChecklist; + + if (t2p.getGapsChecklist().size() > 0) { + + gapsChecklist = t2p.getGapsChecklist(); + } else { + gapsChecklist = db.getGapsDefaultData(t2p.getDisplay_id()); + } final Dialog dialog = new Dialog(T2PComplianceActivity.this); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); @@ -279,8 +328,9 @@ public class T2PComplianceActivity extends AppCompatActivity { @Override public void onClick(View v) { + t2p.setGapsChecklist(gapsChecklist); dialog.cancel(); - + t2PAdapter.notifyDataSetChanged(); } }); @@ -315,7 +365,7 @@ public class T2PComplianceActivity extends AppCompatActivity { final ArrayList sku_list = new ArrayList<>(); - if(skuAddedList.size()>0){ + if (skuAddedList.size() > 0) { rec_sku.setLayoutManager(new LinearLayoutManager(getApplicationContext())); SkuAddedAdapter skuAdapter = new SkuAddedAdapter(skuAddedList); @@ -327,11 +377,10 @@ public class T2PComplianceActivity extends AppCompatActivity { @Override public void onClick(View v) { - if(brand_selected[0] ==null || sku_selected[0]==null || et_stock.getText().toString().equals("")){ + if (brand_selected[0] == null || sku_selected[0] == null || et_stock.getText().toString().equals("")) { - Snackbar.make(v, getResources().getString(R.string.enter_the_values),Snackbar.LENGTH_SHORT).show(); - } - else{ + Snackbar.make(v, getResources().getString(R.string.enter_the_values), Snackbar.LENGTH_SHORT).show(); + } else { SkuGetterSetter sku = new SkuGetterSetter(); sku.setBRAND_ID(brand_selected[0].getBRAND_ID().get(0)); sku.setBRAND(brand_selected[0].getBRAND().get(0)); @@ -360,7 +409,6 @@ public class T2PComplianceActivity extends AppCompatActivity { brand_selected[0] = null; sku_selected[0] = null; - } } @@ -369,7 +417,9 @@ public class T2PComplianceActivity extends AppCompatActivity { btn_cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { + dialog.cancel(); + t2PAdapter.notifyDataSetChanged(); } }); @@ -394,13 +444,13 @@ public class T2PComplianceActivity extends AppCompatActivity { sku_list.clear(); - brand_selected[0] = brandList.get(position); + brand_selected[0] = brandList.get(position); String brand_id = brandList.get(position).getBRAND_ID().get(0); ArrayList temp_list = db.getSkuT2PData(storeType_id, class_id, keyAccount_id, brand_id); - for (int k=0;k parent, View view, int position, long id) { - if(position!=0){ + if (position != 0) { sku_selected[0] = sku_list.get(position); } @@ -470,9 +520,9 @@ public class T2PComplianceActivity extends AppCompatActivity { holder.tb_present.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - if (((ToggleButton) v).getText().toString().equalsIgnoreCase("Yes")) { - mItem.setPresent(true); - } + + mItem.setPresent(((ToggleButton) v).getText().toString().equalsIgnoreCase("Yes")); + } }); @@ -786,4 +836,46 @@ public class T2PComplianceActivity extends AppCompatActivity { } } + public boolean isValid() { + boolean flag = true; + + for (int i = 0; i < t2PGetterSetters.size(); i++) { + + if (t2PGetterSetters.get(i).getImage().equals("")) { + flag = false; + error_msg = getResources().getString(R.string.click_image); + break; + } else if (t2PGetterSetters.get(i).getGapsChecklist().size() == 0) { + flag = false; + error_msg = getResources().getString(R.string.fill_gaps_data); + break; + } else if (t2PGetterSetters.get(i).getSkulist().size() == 0) { + flag = false; + error_msg = getResources().getString(R.string.fill_sku_data); + break; + } + } + + return flag; + } + + @Override + public void onBackPressed() { + //super.onBackPressed(); + + android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(T2PComplianceActivity.this); + builder.setTitle("Parinaam"); + builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) + .setPositiveButton("OK", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + + /* Intent i = new Intent(activity, StorelistActivity.class); + activity.startActivity(i); + activity.finish();*/ + + } + }); + android.app.AlertDialog alert = builder.create(); + alert.show(); + } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fonts/FontManager.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fonts/FontManager.java new file mode 100644 index 0000000..b53fdce --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fonts/FontManager.java @@ -0,0 +1,18 @@ +package cpm.com.gskmtorange.fonts; + +import android.content.Context; +import android.graphics.Typeface; + +/** + * Created by yadavendras on 11-01-2017. + */ + +public class FontManager { + + public static final String ROOT = "fonts/", + FONTAWESOME = ROOT + "fontawesome-webfont.ttf"; + + public static Typeface getTypeface(Context context, String font) { + return Typeface.createFromAsset(context.getAssets(), font); + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fonts/TextDrawable.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fonts/TextDrawable.java new file mode 100644 index 0000000..b7024a0 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fonts/TextDrawable.java @@ -0,0 +1,52 @@ +package cpm.com.gskmtorange.fonts; + +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.ColorFilter; +import android.graphics.Paint; +import android.graphics.PixelFormat; +import android.graphics.drawable.Drawable; + +/** + * Created by yadavendras on 11-01-2017. + */ + +public class TextDrawable extends Drawable { + + private final String text; + private final Paint paint; + + public TextDrawable(String text) { + + this.text = text; + + this.paint = new Paint(); + paint.setColor(Color.WHITE); + paint.setTextSize(22f); + paint.setAntiAlias(true); + paint.setFakeBoldText(true); + paint.setShadowLayer(6f, 0, 0, Color.BLACK); + paint.setStyle(Paint.Style.FILL); + paint.setTextAlign(Paint.Align.LEFT); + } + + @Override + public void draw(Canvas canvas) { + canvas.drawText(text, 0, 0, paint); + } + + @Override + public void setAlpha(int alpha) { + paint.setAlpha(alpha); + } + + @Override + public void setColorFilter(ColorFilter cf) { + paint.setColorFilter(cf); + } + + @Override + public int getOpacity() { + return PixelFormat.TRANSLUCENT; + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java index 8030b22..ca542bb 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java @@ -31,6 +31,8 @@ import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; import cpm.com.gskmtorange.Database.GSKOrangeDB; +import cpm.com.gskmtorange.GetterSetter.AdditionalDialogGetterSetter; +import cpm.com.gskmtorange.GetterSetter.AddittionalGetterSetter; import cpm.com.gskmtorange.GetterSetter.CoverageBean; import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.R; @@ -66,6 +68,8 @@ public class UploadActivity extends AppCompatActivity { ArrayList msl_availabilityList; ArrayList stock_facingHeaderList, stock_facingChildList; ArrayList promotionSkuList, additionalPromotionList; + ArrayList additionalVisibilityList; + ArrayList additionalVisibilitySkuList; @Override protected void onCreate(Bundle savedInstanceState) { @@ -436,6 +440,117 @@ public class UploadActivity extends AppCompatActivity { data.name = "Additional Promotion Data Uploading"; publishProgress(data); + ////ashish open + + //Additional Visibility Data + String additional_visibility_data_xml = ""; + String additional_visibility_dialog_xml = ""; + onXML = ""; + String onXMLdIALOG = ""; + additionalVisibilityList = db.getAdditionalStock(coverageList.get(i).getStoreId()); + + if (additionalVisibilityList.size() > 0) { + for (int J = 0; J < additionalVisibilityList.size(); J++) { + + String KeyID = additionalVisibilityList.get(J).getKey_id(); + + additionalVisibilitySkuList = db.getDialogStock(KeyID); + + for (int k = 0; k < additionalVisibilitySkuList.size(); k++) { + + + onXMLdIALOG = "[VISIBILITY_DAILOG]" + + "[MID]" + mid + "[/MID]" + + "[USER_ID]" + + userId + + "[/USER_ID]" + + "[KEY_ID]" + + additionalVisibilitySkuList.get(k).getKEY_ID() + + "[/KEY_ID]" + /* + "[DIALOG_BRAND_ID]" + + additionalVisibilitySkuList.get(k).getBrand_id() + + "[/DIALOG_BRAND_ID]"*/ + + "[SKU_ID]" + + additionalVisibilitySkuList.get(k).getSku_id() + + "[/SKU_ID]" + + "[QUANTITY]" + + additionalVisibilitySkuList.get(k).getQuantity() + + "[/QUANTITY]" + + "[/VISIBILITY_DAILOG]"; + + additional_visibility_dialog_xml = additional_visibility_dialog_xml + onXMLdIALOG; + + } + + onXML = "[ADDITIONAL_VISIBILITY_DATA]" + + "[MID]" + mid + "[/MID]" + + "[USER_ID]" + + userId + + "[/USER_ID]" + + "[KEY_ID]" + + additionalVisibilityList.get(J).getKey_id() + + "[/KEY_ID]" + + "[ADDITIONAL_DISPLAY]" + + additionalVisibilityList.get(J).getBtn_toogle() + + "[/ADDITIONAL_DISPLAY]" + + "[BRAND_ID]" + + additionalVisibilityList.get(J).getBrand_id() + + "[/BRAND_ID]" + + "[IMAGE_URL]" + + additionalVisibilityList.get(J).getImage() + + "[/IMAGE_URL]" + + "[DISPLAY_ID]" + + additionalVisibilityList.get(J).getSku_id() + + "[/DISPLAY_ID]" + + "[SKU_LIST]" + + additional_visibility_dialog_xml + + "[/SKU_LIST]" + + "[/ADDITIONAL_VISIBILITY_DATA]"; + + additional_visibility_data_xml = additional_visibility_data_xml + onXML; + + } + + final String sos_xml = "[DATA]" + additional_visibility_data_xml + "[/DATA]"; + + request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_UPLOAD_STOCK_XML_DATA); + request.addProperty("XMLDATA", sos_xml); + request.addProperty("KEYS", "ADDITIONAL_VISIBILITY_DATA"); + request.addProperty("USERNAME", userId); + request.addProperty("MID", mid); + + envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); + envelope.dotNet = true; + envelope.setOutputSoapObject(request); + + androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); + + result = (Object) envelope.getResponse(); + + if (!result.toString().equalsIgnoreCase(CommonString.KEY_SUCCESS)) { + return CommonString.METHOD_UPLOAD_STOCK_XML_DATA; + } + + if (result.toString().equalsIgnoreCase(CommonString.KEY_NO_DATA)) { + return CommonString.METHOD_UPLOAD_STOCK_XML_DATA; + } + + if (result.toString().equalsIgnoreCase(CommonString.KEY_FAILURE)) { + return CommonString.METHOD_UPLOAD_STOCK_XML_DATA; + } + } + data.value = 35; + data.name = "Additional Visibility Data"; + publishProgress(data); + + + + /////ashish close + + + + //Image Upload diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/JourneyPlanGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/JourneyPlanGetterSetter.java index 8d99043..7150336 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/JourneyPlanGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/JourneyPlanGetterSetter.java @@ -24,6 +24,19 @@ public class JourneyPlanGetterSetter { ArrayList CLASS_ID = new ArrayList(); ArrayList CAMERA_ALLOW = new ArrayList(); + public ArrayList getCHANNEL_ID() { + return CHANNEL_ID; + } + + public void setCHANNEL_ID(String CHANNEL_ID) { + this.CHANNEL_ID.add(CHANNEL_ID); + } + + ArrayList CHANNEL_ID = new ArrayList(); + + + + public ArrayList getCHECKOUT_STATUS() { return CHECKOUT_STATUS; } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java index f79aec6..430728a 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java @@ -8,7 +8,7 @@ import java.util.ArrayList; public class T2PGetterSetter { - String brand_id, display_id, brand, display, image, remark; + String brand_id, display_id, brand, display, image, remark, key_id; boolean isPresent; ArrayList gapsChecklist = new ArrayList<>(); @@ -85,4 +85,12 @@ public class T2PGetterSetter { public void setSkulist(ArrayList skulist) { this.skulist = skulist; } + + public String getKey_id() { + return key_id; + } + + public void setKey_id(String key_id) { + this.key_id = key_id; + } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java index cae3a52..96db1b3 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java @@ -175,6 +175,11 @@ public class XMLHandlers { jcpGetterSetter.setGEO_TAG(xpp.nextText()); } + if (xpp.getName().equals("CHANNEL_ID")) { + jcpGetterSetter.setCHANNEL_ID(xpp.nextText()); + } + + } xpp.next(); } diff --git a/GSKMTOrange/src/main/res/layout/additionaldialoglayout.xml b/GSKMTOrange/src/main/res/layout/additionaldialoglayout.xml new file mode 100644 index 0000000..d3cad5b --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/additionaldialoglayout.xml @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +